Skip to content

Markd is a modern content-sharing platform that enables users to create, share, and discover articles on various topics. Built with the MERN stack (MongoDB, Express.js, React, Node.js), it offers a seamless user experience with features like real-time updates, user authentication, article management, and social interactions such as upvoting.

Notifications You must be signed in to change notification settings

harshpreet931/Markd

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 

Repository files navigation

Markd

Banner Image

A modern platform for knowledge sharing and discovery.

Demo · Report Bug · Request Feature

Overview

Markd is a content platform that enables users to share their expertise through beautifully crafted articles. Built with modern web technologies, it offers a seamless writing and reading experience with features like real-time article updates, user authentication, and social interactions.

Key Features

  • Secure Authentication System

    • JWT-based authentication
    • Protected routes
    • Secure password hashing
    • Session management
  • Article Management

    • Create/Edit/Delete articles
    • Upvoting system
    • Search functionality based on titles (Will be updated to include tags and content)
  • User Features

    • Custom profiles
    • Article portfolios
    • Bio management
  • Modern UI/UX

    • Responsive design
    • Intuitive navigation
    • Loading states

Tech Stack

Frontend

Backend

Prerequisites

{
  "node": ">=14.x",
  "npm": ">=6.x",
  "mongodb": ">=4.x" // can be local or cloud-based.
}

Quick Start

  1. Clone and Install
# Clone the repository
git clone https://github.com/harshpreet931/markd.git

# Install dependencies
cd markd
npm install
  1. Environment Setup
# Backend (.env)
PORT=8081
DB_CONNECTION_STRING=your_mongodb_connection_string
JWT_SECRET=your_jwt_secret_key

# Frontend (.env)
VITE_API_URL=http://localhost:8081
  1. Development
# Terminal 1 - Backend
cd backend
node index.js

# Terminal 2 - Frontend
cd frontend
npm run dev

Visit http://localhost:5173 to see the app in action.

Project Structure

markd/
├── backend/                # Backend source code
│   ├── middleware/        # Authentication middleware
│   ├── models/           # Database models
│   └── routes/           # API routes
└── frontend/             # Frontend source code
    ├── public/           # Static assets
    └── src/
        ├── components/   # Reusable components
        ├── pages/        # Page components
        └── routes/       # Route definitions

Application Flow

  1. Authentication

    • User registration with email verification
    • JWT-based authentication
    • Protected route handling
  2. Content Management

    • Article creation
    • Image upload and management
    • Search Functionality based on Titles (Will be updated to include tags and content)
  3. User Interactions

    • Article upvoting system

Acknowledgments


Made with ❤️ by Harshpreet Singh

About

Markd is a modern content-sharing platform that enables users to create, share, and discover articles on various topics. Built with the MERN stack (MongoDB, Express.js, React, Node.js), it offers a seamless user experience with features like real-time updates, user authentication, article management, and social interactions such as upvoting.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published