Skip to content
/ echo Public

Modern Twitter-like social media app built with Node.js, TypeScript, Express, and EJS.

Notifications You must be signed in to change notification settings

SaliouOR/echo

Repository files navigation

🌟 Echo: A Modern Social Media Experience

Echo Logo

Welcome to the Echo repository! This project represents a modern social media application that mimics the functionality of Twitter. Built with a stack that includes Node.js, TypeScript, Express, and EJS, Echo provides a seamless experience for users to connect and share.

Table of Contents

Features

Echo offers a variety of features to enhance user interaction and engagement:

  • User Authentication: Secure user registration and login using JWT.
  • Post Creation: Users can create and share posts with text and media.
  • Real-Time Updates: Get instant updates on new posts and interactions.
  • User Profiles: Each user has a profile page to showcase their posts and followers.
  • Responsive Design: Works well on both desktop and mobile devices.
  • Search Functionality: Easily find users and posts through a search feature.
  • Commenting System: Engage with posts through comments.

Technologies Used

Echo utilizes a robust tech stack to ensure high performance and scalability:

  • Node.js: The runtime environment for executing JavaScript server-side.
  • TypeScript: A superset of JavaScript that adds static types for better code quality.
  • Express: A minimal web framework for building web applications.
  • EJS: A templating engine that allows embedding JavaScript in HTML.
  • PostgreSQL: A powerful relational database for storing user data and posts.
  • Prisma: An ORM that simplifies database interactions.
  • Supabase: Provides backend services like authentication and real-time subscriptions.
  • AWS S3: For storing media files securely.
  • Docker: Containerizes the application for easy deployment.

Installation

To get started with Echo, follow these steps:

  1. Clone the Repository:

    git clone https://github.com/SaliouOR/echo.git
  2. Navigate to the Project Directory:

    cd echo
  3. Install Dependencies:

    Use npm or yarn to install the required packages.

    npm install
  4. Set Up Environment Variables:

    Create a .env file in the root directory and configure your environment variables. Refer to .env.example for the required variables.

  5. Run the Application:

    Start the server using:

    npm start

    Your application will be running on http://localhost:3000.

Usage

After installation, you can begin using Echo:

  • Create an Account: Register a new account to start posting.
  • Log In: Use your credentials to log in.
  • Create Posts: Share your thoughts and media.
  • Interact: Like, comment, and follow other users.
  • Explore: Use the search feature to find content and users.

Contributing

We welcome contributions! If you want to help improve Echo, follow these steps:

  1. Fork the Repository: Click the "Fork" button on the top right of the repository page.

  2. Create a Branch: Create a new branch for your feature or bug fix.

    git checkout -b feature/YourFeatureName
  3. Make Changes: Implement your changes and commit them.

    git commit -m "Add your message here"
  4. Push Changes:

    git push origin feature/YourFeatureName
  5. Open a Pull Request: Go to the repository and click on "New Pull Request."

Please ensure your code adheres to the project's coding standards.

License

This project is licensed under the MIT License. See the LICENSE file for details.

Releases

For the latest updates and versions, visit the Releases section. Here, you can download the latest release and execute it.

Contact

For any questions or feedback, feel free to reach out:

Thank you for your interest in Echo! We hope you enjoy building and using this social media application.

Releases

No releases published

Packages

No packages published

Contributors 2

  •  
  •