Welcome to Fasttify, the ultimate SaaS solution for creating and managing personalized dropshipping stores effortlessly. Built on AWS Amplify Gen2 with a modern Next.js front end, Fasttify combines scalability, performance, and a user-friendly interface.
Fasttify empowers users to build their ecommerce business with:
- A sleek design featuring pastel colors, rounded edges, and the Roboto font for a modern, inviting look.
- Fully customizable stores tailored to individual needs.
- Tools for subscription-based plans to offer scalable features.
- Authentication: Secure and customizable user sign-up and sign-in powered by AWS Cognito with Amplify Gen2's improved TypeScript support.
- Subscriptions: Integrated with Mercado Pago, enabling easy subscription management with upgrade, downgrade, and cancellation functionality.
- Custom Plans: Personalize user plans with AWS Lambda and custom attributes, leveraging Gen2's enhanced type safety.
- API and Database: Utilizes Amplify Gen2's improved data modeling with TypeScript for AWS AppSync (GraphQL API) and DynamoDB, providing fast, scalable data management.
- Webhooks: Stay synchronized with real-time notifications for subscription updates.
- Type Safety: Benefit from Amplify Gen2's TypeScript-first approach for better developer experience and fewer runtime errors.
- Local Development: Enhanced local development experience with Gen2's improved tooling and emulators.
-
Clone the Repository:
git clone https://github.com/Stivenjs/Fasttify.git cd fasttify
-
Install Dependencies:
npm install
-
Setup Amplify Gen2:
- Initialize Amplify in your project:
npx @aws-amplify/cli@latest init
- Add authentication:
npx @aws-amplify/cli@latest add auth
- Generate the TypeScript definitions:
npx @aws-amplify/cli@latest generate
- Deploy your backend:
npx @aws-amplify/cli@latest deploy
- Initialize Amplify in your project:
-
Start the Development Server:
npm run dev
Your app will be live at
http://localhost:3000
.
Fasttify leverages AWS Amplify Gen2 to provide:
- TypeScript-First Experience: Improved type safety and developer experience.
- Simplified Resource Definition: Define your backend resources using TypeScript.
- Enhanced Local Development: Test your app locally with improved emulators.
- Flexible Deployment Options: Deploy your entire stack or individual resources.
- Better Performance: Optimized client libraries for faster application performance.
- Improved DX: Better error messages and development workflows.
If you already have an AWS account and a locally configured profile, you only need to add the IAM role AmplifyBackendDeployFullAccess
to your configured AWS profile.
If you don't have a configured AWS profile, follow these steps:
-
Enable IAM Identity Center:
- Sign in to the AWS console
- Access the IAM Identity Center page and select "Enable"
- When prompted, select "Enable with AWS Organizations" and click "Continue"
-
Configure a user with Amplify permissions:
- Open CloudShell from the AWS console
- Run commands to set up appropriate permissions
-
Create a permission set for Amplify:
- In the IAM Identity Center navigation, select "Permission sets"
- Select "Create permission set"
- Choose "Custom permission set" and click "Next"
- Expand "AWS Managed Policies" and search for "amplify"
- Select "AmplifyBackendDeployFullAccess" and click "Next"
- Name the permission set "amplify-policy" and click "Next"
- Review and select "Create"
To deploy Fasttify to AWS:
- Connect your Amplify app to this repository.
- Set up branches for production and development.
- Deploy directly from Amplify Console.
Refer to the AWS Amplify Gen2 Deployment Guide for detailed instructions.
We welcome contributions to Fasttify! Check out our CONTRIBUTING.md for guidelines.
For information about reporting security issues, see SECURITY.md.
This project is licensed under the MIT-0 License. See the LICENSE file for details.