[App] Creating a near identical clone of the famous social media website, Reddit
See it live on optimistictrousers.github.io/reddit-clone Or clone repo, cd into repo, then run "npm run start"
Creating a full-stack webapp with React.js and Firebase, with multiple routes. Using Typescript and Redux.
Beyond that, other learning outcomes were:
- Design reusable components
- Creating and deleting data inside of a Firebase Firestore database
- Allowing the user to authenticate to interact with the application
- Creating custom hooks
- Using Redux for state management
- Typescript for types
- Using moment.js for Date utilities
- Allows users to authenticate
- Allows users to create subreddits
- Allows users to create posts
- Allows users to filter through posts
- Allows users to upvote posts and comments
- Allows users to reply to comments
- Allows users to search for subreddits
- Responsive
- Subreddit moderators
- Subreddit editing
- Image upload
- User can join subreddits
- Firebase - Cloud services (database, authentication)
- Redux - State management library
- ESLint - A linter tool to standardize code
- Github Pages - Hosting
- Prettier - Code formatter
- React Router - Router tool for React applications
- Jest - Assertion and test running library
- Testing Library - Testing library for queries
- React CSS Modules - CSS with local scoping
- React - Javascript library
- Typescript - Static typing in JavaScript
- Karma
- Allow users to change profile pictures
- Adding more levels
- Give the user back their time in seconds with demicals instead of seconds
- Light mode
- Trending posts
- Awards
- Coins
- Pagination and lazy loading
- Allow users to filter their content inside their profile
- Allow users to search for posts within subreddits
- Pinning posts in a subreddit
- Status of "Saved" posts only appears on the post page itself, not when rendered as a post inside of a list of posts