Angular Starters is my Supabase Hackathon submission. It is a website that allows users to submit their Open Source starter projects using their favorite libraries and services, all written in Angular, for the benefit of the Angular Community.
As of late I have been developing in React and React Native, but I have a true love and passion for Angular. I've been meaning to create this application for over a year, in fact I started it over a year ago, but got discouraged due to the difficulty of the serverless platform I was previously using. When I heard of Supabase, and subsequently their hackathon event, I thought this would be the perfect opportunity to give it a go. Hope you enjoy!
- Live site at angularstarters.io hosted by Netlify
- YouTube demo video.
- My twitter
I used supabase to manage user accounts that can submit starter projects to be displayed on the Angular Starters site. Below is a detailed explanation.
Users can sign up/sign in with their GitHub account.
Admins are invited via email and can sign in via requesting a magic link.
profiles
- for storing user profile data given by GitHub on sign up/sign instarters
- for storing starter project datastarter_revisions
- for storing any revisions the user wants to make to a starter while their revisions are being reviewed by adminsstarter_activity
- for storing any activity events associated with the starter (starter created, status changed, comment made, etc)
starter-covers
- a bucket for storing all starter covers
Unauthenticated users can view any starter.
Authenticated users have access to all of their starter data (including activities and revisions).
Admins can access all data.
Huge shoutout to TailwindUI. Without my subscription I could've never designed this in such little time without it.
- Side-by-side revision view
- Ability to cancel (delete) a revision request
- Add search for starters
- Determine starter dependencies on starter details page
- Determine angular version
Run ng serve
for a dev server. Navigate to http://localhost:4200/
. The app will automatically reload if you change any of the source files.
Run ng generate component component-name
to generate a new component. You can also use ng generate directive|pipe|service|class|guard|interface|enum|module
.
Run ng build
to build the project. The build artifacts will be stored in the dist/
directory.
Run ng test
to execute the unit tests via Karma.
Run ng e2e
to execute the end-to-end tests via a platform of your choice. To use this command, you need to first add a package that implements end-to-end testing capabilities.
To get more help on the Angular CLI use ng help
or go check out the Angular CLI Overview and Command Reference page.