Designful is a social networking service exclusively designed for creators and fan. We have ambition to replace major giants in this field such as Pixiv and OnlyFans. With this goal in mind, we try to offer more simple, easy and intuitive user interface on the client side, while super fast, less resource intensive, flexible, scalable and most importantly secure and reliable backend is implemented on the server side.
Designful aims to implement all of the features covered by the competitors and also add new features to help creators and fans engage more simple, easy and fun way.
Here are the lists of features worth mentioning.
-
Analytics Dashboard
-
Authentication and Authorization
-
Image and video upload
-
User follow
-
Post like
-
Place orders and checkout
-
Notifications
-
Webhooks handling events such as payment confirmation
As we're a small group of developers, we have limited resource and capabilities. Therefore, we have decided to prioritize the most important features first. As a record for roadmap, We have gathered the features that we'are going to implement in the next months.
- Schedule post publish date
This include scheduler such as cron or background processing such as AWS Batch.
- Chat and messaging
This include the real time messaging with socket.io.
- Assets transformation
This include adaptive birate streaming, making clips from uploaded video, and offering more insightful analytics for creators.
- Advanced searching and filtering
This include the full-text search powered with Meilisearch or Elasticsearch.
- Multi channel notifications
This include email and push notification support on top of in app notifications.
- Flexible pricing
This include facilitating easy launch of discount and campaign.
- Stripe: Checkout
- Clerk: Authentication and Authorization
- Sentry: Error monitoring
- Novu: Notifications
- Docker: Container
- Terraform: IaC
- Github Actions: CI/CD
- AWS: Cloud Infrastruture
For local development, here are some basic commands with Makefile
to get started.
# Start container
make start
# Stop container
make stop
# Run unit tests
make test