Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/williamfridh/semli

A simple social-network web app built for educational purposes.
https://github.com/williamfridh/semli

firebase firebase-auth firebase-database hooks-api-react reactjs social-network

Last synced: 26 days ago
JSON representation

A simple social-network web app built for educational purposes.

Awesome Lists containing this project

README

        

# SEMLI - A simple social app

Semli is a simple social app built for educational purposes. It's based on React with a responsive design and minimalistic functionality. I decided to build it right after finishing a TypeScript course at [Codecademy](https://www.codecademy.com/learn/learn-typescript) to solidify my existing knowledge and learn some additional ones.

## Functions

- Login using Google account
- Post with hashtags
- Hashtag search
- Like/unlike post
- Add profile picture

## Technologies used

![HTML5](https://img.shields.io/badge/html5-%23E34F26.svg?style=for-the-badge&logo=html5&logoColor=white) ![CSS3](https://img.shields.io/badge/css3-%231572B6.svg?style=for-the-badge&logo=css3&logoColor=white) ![CSS3](https://img.shields.io/badge/css3-%231572B6.svg?style=for-the-badge&logo=css3&logoColor=white) ![TypeScript](https://img.shields.io/badge/typescript-%23007ACC.svg?style=for-the-badge&logo=typescript&logoColor=white) ![React](https://img.shields.io/badge/react-%2320232a.svg?style=for-the-badge&logo=react&logoColor=%2361DAFB) ![React Router](https://img.shields.io/badge/React_Router-CA4245?style=for-the-badge&logo=react-router&logoColor=white) ![NPM](https://img.shields.io/badge/NPM-%23000000.svg?style=for-the-badge&logo=npm&logoColor=white) ![Firebase](https://img.shields.io/badge/firebase-%23039BE5.svg?style=for-the-badge&logo=firebase) ![GitHub](https://img.shields.io/badge/github-%23121011.svg?style=for-the-badge&logo=github&logoColor=white) ![Styled Components](https://img.shields.io/badge/styled--components-DB7093?style=for-the-badge&logo=styled-components&logoColor=white)

I decided not to build this project using Redux to get more practice using existing hooks and custom ones. Using Redux for this project would also be unnecessary due to its simplicity.

## Comment

There are multiple parts of the applications that can be improved and functions to be added. However, since this was for educational purposes, I decided to not dive too deep into this.

The rules used for Firebase are available in the files [firestore.rules](firestore.rules) and [storage.rules](storage.rules).