Codestash is a full-stack web app where developers can share, store, and discover code snippets. With community-driven features and AI-powered enhancements, Codestash blends the social dynamics of Reddit with the technical expertise of Stack Overflow.
- π User Authentication & Profiles: Sign up, log in, and manage your personal code stash.
- βοΈ Create, Read, Update, Delete (CRUD): Easily create and manage your code snippets.
- π Community-Based Organization: Share snippets with the community, organized by tags and topics.
- π» Multi-Language Support: Store snippets in various programming languages.
- π¨ Code Syntax Highlighting: Enhanced readability with syntax highlighting.
- π Upvoting/Downvoting System: Vote on the most useful snippets.
- π€ AI-Powered Code Explanations: Get AI-generated explanations for code snippets.
- π VS Code Integration: Open code snippets in VS Code.
Codestash creates a collaborative space for developers, making it easy to find, share, and improve code with a supportive community.
- Framework: Next.js (v14.2.1)
- Styling: TailwindCSS (v3.4.10), Tailwind CSS Animate (v1.0.7)
- State Management: Zustand (v4.5.5)
- Data Fetching: React Query (v5.52.1)
- Animations: Framer Motion (v11.5.4), Auto Animate (v0.8.2)
- UI Components: Radix UI (Dialog, Select, Toast, etc.), NextUI (v2.4.6)
- Markdown Rendering: React Markdown Preview (v5.1.3), Markdown-to-JSX (v7.5.0)
- Utilities: Axios (v1.7.5), clsx (v2.1.1)
- Code Editor: React Textarea Code Editor (v3.0.2)
- Framework: Express.js (v4.19.2)
- Database: MongoDB with Mongoose (v8.5.4)
- Authentication: JWT (v9.0.2), bcrypt (v5.1.1)
- File Uploads: Multer (v1.4.5-lts.1), Cloudinary (v2.4.0)
- Security: Helmet (v7.1.0), CORS (v2.8.5), Cookie Parser (v1.4.6)
- Logging: Pino (v9.3.2)
- Validation: Zod (v3.23.8)
- AI-powered Code Explanations: Google Generative AI (v0.19.0)
- Rate Limiting: Unkey
- Frontend: TypeScript, ESLint, Prettier, Husky
- Backend: TypeScript, Vitest, Tsup, ESLint, Prettier
- Build & Dev: Tsup (v8.2.4), TSX (v4.17.0), Rimraf (v5.0.10)
This project is licensed under the GNU General Public License v3.0.
You may copy, distribute, and modify the software as long as you track changes/dates in source files.
Any modifications to the codebase must also be made available under the same license.
See the LICENSE file for more details.