Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/ammariabdelmounaim/ssr-like-a-chad

This repository is for a web app served entirely from the server using only Node.js and Express.
https://github.com/ammariabdelmounaim/ssr-like-a-chad

ejs nodejs ssr

Last synced: 2 months ago
JSON representation

This repository is for a web app served entirely from the server using only Node.js and Express.

Awesome Lists containing this project

README

        

# Server-Side Rendered App Using Only Node.js Express

Welcome to this Node.js Express project! This app is built entirely using Node.js and Express, and showcases how far you can go with a completely server-side rendered approach. No fancy frameworks here—just classic technologies combined with a modern touch.

## Quick Demo

https://github.com/user-attachments/assets/59a5cee0-a0ee-4bd2-973b-7bd90e6b04db

## About the Project

I took on this project to challenge myself and see how much I could achieve without relying on front-end frameworks like React or Next.js. The result? A fully server-side rendered app that's both efficient and feature-rich, with modern touches like reusable components, hot reload, and my favorite styling framework—Tailwind CSS.

I have to admit, I'm genuinely impressed with the outcome, and I actually find it pretty effective! The stack allowed me to use some of my favorite technologies while sticking with the simplicity of Node.js and Express.

## Technologies Used

- **Server**: Node.js with Express
- **Styling**: Tailwind CSS
- **Views**: EJS (Embedded JavaScript)
- **Authentication**: Passport.js
- **Database**: MongoDB
- **Cloud Storage**: AWS S3

### Features

- **Server-Side Rendering**: All pages are rendered on the server, providing a seamless, fast experience.
- **Reusable Components**: Developed reusable EJS components, making the project modular and easy to maintain.
- **Authentication**: Secure authentication using Passport.js, including login and registration flows.
- **Cloud Storage**: Leveraged AWS S3 for storing files and images.
- **Hot Reload**: Enhanced developer experience with hot reload during development.

## Running the Project Locally

1. **Clone the repository**:

```bash
git clone [https://github.com/your-username/your-repository.git](https://github.com/AmmariAbdelmounaim/ssr-like-a-chad.git)
cd ssr-like-a-chad
```

2. **Install dependencies**:

```bash
npm install
```

3. **Set up environment variables**:

4. **Run the development server**:

```bash
npm run watch
```

5. **Access the app**:

Visit `http://localhost:3000` in your browser to view the app.

## Contributing

Feel free to open issues and submit pull requests if you'd like to contribute or report any bugs.