Skip to content

CKodidela/Mnemo

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

25 Commits
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

Mnemo

Mnemo is a full-stack web application built with a TypeScript + Node.js backend and a React (Vite) frontend.
It helps users manage and share content securely with authentication and role-based access.

πŸŽ₯ Demo Video Preview

Watch the demo


πŸš€ Features

  • πŸ” Authentication & protected routes
  • πŸ“¦ Content management (add, view, share)
  • 🌐 Public & private routes with access control
  • 🎨 Modern UI powered by shadcn/ui & TailwindCSS
  • πŸŒ™ Dark mode support for better accessibility
  • ⚑ Built with TypeScript for type safety

πŸ“‚ Project Structure


Mnemo
β”œβ”€ backend        # Node.js + Express + MongoDB (TypeScript)
β”‚  β”œβ”€ src         # Source code
β”‚  β”œβ”€ dist        # Compiled JS
β”‚  β”œβ”€ .env        # Environment variables (create from .env.example)
β”‚  └─ tsconfig.json
β”‚
β”œβ”€ frontend       # React + Vite + Tailwind + shadcn/ui
β”‚  β”œβ”€ src         # Components, pages, store, utils
β”‚  β”œβ”€ public      # Static assets
β”‚  └─ vite.config.ts
β”‚
└─ README.md


βš™οΈ Setup & Installation

1. Clone the repository

git clone https://github.com/your-username/mnemo.git
cd mnemo

2. Backend Setup

cd backend
npm install
cp .env.example .env   # configure environment variables
npm start

Backend runs at: http://localhost:3000

3. Frontend Setup

cd frontend
npm install
npm run dev

Frontend runs at: http://localhost:5173


πŸ”‘ Environment Variables

The backend requires a .env file. Use the provided .env.example as a reference.

# Server
PORT=3000

# Database
MONGO_URI=mongodb://localhost:27017/mnemo

# Authentication
JWT_SECRET=your_jwt_secret_here
JWT_EXPIRES_IN=1d

⚠️ Never commit your real .env file to GitHub. Only share .env.example.


πŸ›  Tech Stack

Backend:

  • Node.js, Express, TypeScript
  • MongoDB (Mongoose)
  • JWT Authentication

Frontend:

  • React (Vite + TypeScript)
  • TailwindCSS + shadcn/ui
  • Zustand for state management
  • React Router v6

πŸ“œ License

This project is licensed under the MIT License.


About

Mnemo is an app where you can come, add content from various sources (Twiitter, Youtube, Google docs) and store it in a centralized place.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages