Hash
Introducing Hashnode Clone: A full-stack application replicating Hashnode's functionalities. Built with Next.js 12, Tailwind CSS, t3-stack, Stripe and Drizzle. 🚀
Install / Use
/learn @ujen5173/HashREADME
[!NOTE] This project is no longer maintained. For the meanwhile check out my other projects while i build new version of Codexa clone (Codexa) with the modern techstack and more efficient and structured codebase.
Hashnode Clone
This is a full-stack application that serves as a clone of the popular blogging website, Codexa. The purpose of this project is to showcase my skills in web development and serve as a learning experience. I have utilized Next.js, Nextjs, Tailwind CSS, and the T3 stack with PostgreSQL as the technology stack for this project. With a plethora of exciting features, this intermediate-level project replicates most of the functionalities found on the original Codexa website. I hope you enjoy this project as much as I enjoyed building it. Cheers 🍻. Contributions are welcome!
Table of Contents
- Features
- Installation
- Setting up the development environment
- Contribution
Features
- Authentication
- User blogging dashboard
- Search Functionality
- Follow user/tag
- Notifications
- Text completion AI
- Payment Gateway using stripe
Installation
Clone the repository
git clone https://github.com/ujen5173/Codexa.git
Navigate to the project directory:
cd Codexa
Install the dependencies:
yarn
Create account in the below services and get the API keys
- Google Cloud
- Uploadthing for image upload
- Railway for database
- Stripe for payment
- Google AI for text completion
Setting up the datase
- Create an account on Railway to setup cloud postgresql database.
- Navigate to the railway new app and choose Provision PostgreSQL.
- Access the Variables section within the newly created database.
- Retrieve the DATABASE_URL and transfer it to the .env file under the same name.
- Execute yarn db:dev to upload the schema to the Railway database.
Setting up the development environment
- Set up the required environment variables. Refer to the
.env.examplefile for the necessary variables. - Create
.envfile in the root directory of the project and add the environment variables with reference to the.env.examplefile. - Create an account in neon.tech for pushing database to the cloud. Use the neon database URL in the
.envfile ->DATABASE_URL. - Push the database schema to your PostgreSQL database:
yarn db:dev. (OPTIONAL IF YOU HAVE ALREADY PUSH THE DATABASE) - Start the development server:
yarn dev - Open your web browser and visit http://localhost:3000
Contribution
Contributions are welcome! If you would like to contribute to this project, please follow these steps:
- Create issues for bugs and new features you would like to add.
- After an issue has been approved, you can create a pull request.
- Fork this repository.
- Create a new branch for your contribution:
git checkout -b feature/your-feature - Make your changes and commit them:
git commit -m "Add your message here" - Push the changes to your branch:
git push origin feature/your-feature - Open a pull request.
Cheers 🍻.
Related Skills
feishu-drive
338.0k|
things-mac
338.0kManage Things 3 via the `things` CLI on macOS (add/update projects+todos via URL scheme; read/search/list from the local Things database)
clawhub
338.0kUse the ClawHub CLI to search, install, update, and publish agent skills from clawhub.com
FastGPT
27.5kFastGPT is a knowledge-based platform built on the LLMs, offers a comprehensive suite of out-of-the-box capabilities such as data processing, RAG retrieval, and visual AI workflow orchestration, letting you easily develop and deploy complex question-answering systems without the need for extensive setup or configuration.
