CRYSTAL is available for testing
25.10.2024
CRYSTAL is an open source social network currently under development.
The main features that are available now:
- 1. Registration/editing/deleting a user.
- 2. Avatar, banner, description and unique user Id.
- 3. Adding/editing/deleting posts.
- 4. Compress added images in the browser using – npmjs.com/package/browser-image-compression and checking the acceptable image size on the server.
- 5. Likes and hashtags system.
- 6. Partial translation into English using react.i18next.com.
- 7. Dark theme using Redux (not fully colored).
- 8. Validation, partially using Yup npmjs.com/package/yup, sometimes custom.
- 9. Registration/authentication/authorization and general work with requests is based on TanStack Query tanstack.com/query/latest + Redux.
- 10. Authorization via Cookie/JWT (HTTPonly, Secure, SameSite: Strict).
- 11. reCAPTCHA v3 upon registration.
- 12. Infinite scrolling of posts.
In the future it is planned to add: private messages with encryption, comments, photo/video albums, etc.
The goal of the project is to create a safe, fast and convenient social network using the best technologies. Currently, the project is in the MERN stack, deployed to a VPC.
The project will consist of stages. The first stage in the MERN stack will be open source, with detailed instructions on how to deploy the project on a VPC with Debian, configure and run it in a fully working form with Nginx configuration, security settings, auto-renewal of the SSL certificate, work through GitHub, etc. After some time, the code will be published on GitHub, and instructions in the CRYSTAL category. The second stage and subsequent ones will be either open or partially open source, and a transition to ScyllaDB, Next.js and TypeScript is also planned.
Share
BTC (Network BTC) - 1C2EWWeEXVhg93hJA9KovpkSd3Rn3BkcYm
Ethereum (Network ERC20) - 0x05037ecbd8bcd15631d780c95c3799861182e6b8
Comment on