Skip to content

Social media like platform for who loves taking notes using markdown. Written in Typescript using Next.js, Graphql and Prisma.

Notifications You must be signed in to change notification settings

berkaycimsir/notdown

Repository files navigation

Notdown

Notdown is a social media like platform for who loves to take notes with using markdown about their life, programming stuff and much more!

Live demo here.

Table of Contents

General Information

Notdown is a social media like platform for who loves to take notes with using markdown about their life, programming stuff and much more!

Users can take notes about anything they want and save them. Also, they can publish them if they want to. They can follow the authors they love and read/bookmark/star their notes. Also, they can look for the notes which bookmarked/starred by the authors they followed.

Technologies Used

  • React (with typescript)
    • Next.js for SSR
    • Zustand as a state manager
    • MUI as a UI library
    • Apollo Graphql for handling client site GraphqQL
    • Apollo Server Micro to create handler for graphql server on Next.js api routes
    • React Hook Form to handle form states/validation
  • Graphql
    • Graphql Nexus - fully typesafe, code-first graphql schemas
    • Graphql Codegen to achieve fully typescript support and react-hooks
    • Nexus Prisma - prisma adapter for Graphql Nexus
  • Prisma - Database ORM
  • Jsonwebtoken/Bcrypt - handle user login/register (auth)
  • Cloudinary - To upload images/videos/audios

Setup

First, clone the repository:

git clone https://github.com/berkaycimsir/notdown.git <directory_name>

Second, go to the project folder and install dependencies:

yarn install

Then, set your environment variables:

This project uses postgresql as database. You can read more about databases in prisma from here

// .env

DATABASE_URL =
DATABASE_MIGRATE_URL =
PRISMA_CLIENT_ENGINE_TYPE = dataproxy
NO_PEER_DEPENDENCY_CHECK = true
JWT_SECRET =
NEXT_PUBLIC_SERVER_PROD_URL =
NEXT_PUBLIC_SERVER_LOCAL_URL =

Finally, you can start the project by running:

yarn generate && yarn dev

Project Status

Project is: not being worked on

Contact

Created by @berkaycimsir - feel free to contact me!

👤 Berkay Çimşir

Show your support

Give a ⭐️ if this project helped you!

About

Social media like platform for who loves taking notes using markdown. Written in Typescript using Next.js, Graphql and Prisma.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages