An open API service indexing awesome lists of open source software.

https://github.com/avocodos/avocodos

A completely web3-based social media and learning platform built on Aptos network.
https://github.com/avocodos/avocodos

aptos aptos-sdk aptos-wallet hacktoberfest hacktoberfest-accepted lucia-auth lucide-icons nextjs15 prisma-orm react-hook-form react19 redis shadcn-ui supabase tailwindcss tanstack-query tiptap typescript uploadthing zod

Last synced: about 1 month ago
JSON representation

A completely web3-based social media and learning platform built on Aptos network.

Awesome Lists containing this project

README

        

Avocodos Logo

[![CC BY-NC 4.0][cc-by-nc-shield]][cc-by-nc]
---
[![Open Source? Yes!](https://badgen.net/badge/Open%20Source%20%3F/Yes%21/green?icon=github)](https://github.com/Naereen/badges/)
[![GitHub stars](https://badgen.net/github/stars/Avocodos/avocodos?color=green)](https://GitHub.com/avocodos/avocodos/stargazers/)
[![Maintainer](https://badgen.net/badge/maintainer/Harjot%20Singh%20Rana/green)](https://harjot.pro)
[![GitHub branches](https://badgen.net/github/branches/avocodos/avocodos?color=green)](https://github.com/avocodos/avocodos)
[![GitHub commits](https://badgen.net/github/commits/avocodos/avocodos?color=green)](https://github.com/avocodos/avocodos/commits/main)
[![GitHub last commit](https://badgen.net/github/last-commit/avocodos/avocodos?color=green)](https://github.com/avocodos/avocodos/commits/main)
[![GitHub issues](https://badgen.net/github/issues/avocodos/avocodos?color=green)](https://github.com/avocodos/avocodos/issues)
[![GitHub pull requests](https://badgen.net/github/prs/avocodos/avocodos?color=green)](https://github.com/avocodos/avocodos/pulls)
[![GitHub watchers](https://badgen.net/github/watchers/avocodos/avocodos?color=green)](https://GitHub.com/avocodos/avocodos/watchers/)

[cc-by-nc]: LICENSE
[cc-by-nc-image]: https://licensebuttons.net/l/by-nc/4.0/88x31.png
[cc-by-nc-shield]: https://img.shields.io/badge/License-CC%20BY--NC%204.0-lightgrey.svg

# Avocodos
Avocodos is a completely web3-based social media and learning platform. Avocodos allows users to create, share, and learn from courses and communities.

## Table of Contents
- [Features](#features)
- [Tech Stack](#tech-stack)
- [Installation](#installation)
- [Submit an Issue](#submit-an-issue)
- [Contribute](#contribute-to-this-repository)

## Features
- View and enroll in courses
- Get rewareded with NFTs for completing courses
- Create posts
- Create comments
- Create messages with reactions
- Create communities
- Follow other users
- Community moderation features
- Community flair/badges
- Community Roles
- Community NFTs
- Self-created messaging system with reactions and attachments
- Course management system for instructors
- Community badges creation and management
- Community roles creation and management
- Welcome NFT reward for new users
- Course enrollment and payment system (demo)
- Community creation feature
- Rewards system for user achievements
- Enhanced SEO and metadata for various pages
- Community member and moderator management

## Tech Stack
1. Next.js: React framework for server-side rendering and static site generation.
2. React: JavaScript library for building user interfaces.
3. TypeScript: Typed superset of JavaScript for improved developer experience.
4. Prisma: Modern database toolkit for Node.js and TypeScript.
5. Lucia: Authentication library for TypeScript.
6. Tailwind CSS: Utility-first CSS framework for rapid UI development.
7. Radix UI: Unstyled, accessible components for building high-quality design systems.
8. React Query: Data fetching and state management library for React applications.
9. Tiptap: Headless, extensible rich text editor framework for React.
10. Zod: TypeScript-first schema validation library.
11. React Hook Form: Performant form management library for React.
12. Uploadthing: File upload solution for Next.js applications.
13. Stream Chat: Real-time messaging SDK for building chat applications.
14. ESLint: JavaScript and TypeScript linter for maintaining code quality.
15. Prettier: Code formatter for consistent code style.
16. Sharp: High-performance image processing library for Node.js.
17. Supabase: Open source Firebase alternative (used as a postgreSQL database).
18. Prisma Accelerate: Global database connection pool and caching layer.
19. Aptos TypeScript SDK: SDK which allows you to interact on the Aptos blockchain.
20. shadcn/ui: Re-usable components built using Radix UI and Tailwind CSS.
21. Aptos Wallet Adapter: For integrating with Aptos wallets.
22. date-fns: Modern JavaScript date utility library.
23. Lucide React: Beautiful & consistent icon pack for React.
24. Redis: In-memory data structure store, used as a database, cache, and message broker.

## Installation
To set up the project locally, follow these steps:

1. Clone the repository:
```bash
$ git clone https://github.com/HarjjotSinghh/avocodos.git
$ cd avocodos/frontend
```

2. Install dependencies:
```bash
$ npm install
```

3. Set up environment variables:
Copy the `.env.example` file to `.env` and fill in the required values.

4. Run the development server:
```bash
$ npm run dev
```

5. Open [http://localhost:3000](http://localhost:3000) with your browser to see the live website.

## Submit an Issue
If you encounter any bugs or have suggestions for improvements, please feel free to submit an issue:

1. Go to the [Issues](https://github.com/HarjjotSinghh/avocodos/issues) page of this repository.
2. Click on the "New Issue" button.
3. Choose the appropriate issue template if available, or create a blank issue.
4. Fill in the title and description with as much detail as possible.
5. Submit the issue.

## Contribute to this Repository

Please read our [contribution guide](https://github.com/avocodos/avocodos/blob/master/CONTRIBUTING.md) to learn more about contributing to this project.

Please ensure that your code adheres to the project's coding standards and includes appropriate tests if applicable.

Thank you for contributing to Avocodos!