Skip to content

Commit 9084d22

Browse files
committed
implementation details for audio-twitter, rn-chat and redux-ecommerce
1 parent d0bd7a4 commit 9084d22

File tree

4 files changed

+15
-4
lines changed

4 files changed

+15
-4
lines changed

src/content/project/2019/09-29-redux-ecommerce/index.mdx

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,9 @@ Build a basic e-commerce website.
3535

3636
## Implementation details
3737

38-
You can find more implementation details in the <Link href="https://github.com/nemanjam/redux-ecommerce" variant="markdown" target="_blank" title="README.md">README.md</Link> file on Github.
38+
It is a static, client side app that uses Promise based fake backend for simulating data fetching. The UI is build using React Bootstrap components. The state for products filtering, sorting, infinite scroll pagination and cart is managed using Redux. Images use load event for displaying a spinner.
39+
40+
For more implementation details see the <Link href="https://github.com/nemanjam/redux-ecommerce" variant="markdown" target="_blank" title="README.md">README.md</Link> file on Github.
3941

4042
## Lessons learned
4143

src/content/project/2019/10-23-rn-chat/index.mdx

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -36,11 +36,16 @@ Learn React Native by building a basic chat app with users and groups.
3636

3737
## Implementation details
3838

39+
At the time React Native and GraphQL were very popular combination for efficient data fetching. The app uses Apollo for CRUD operations and real time subscriptions. React Navigation is used for routing between activity screens. The UI is built using NativeBase components.
40+
41+
The most challenging part is the PostgreSQL database schema that supports relations between User, Group, Chat and Message models. Database is managed via Sequelize ORM.
42+
3943
You can find more implementation details in the <Link href="https://github.com/nemanjam/rn-chat" variant="markdown" target="_blank" title="README.md">README.md</Link> file on Github.
4044

4145
## Lessons learned
4246

4347
- Get practical experience with React Native.
48+
- React Native requires very carefully handpicked package versions for a successful build.
4449

4550
## Links
4651

src/content/project/2020/02-16-audio-twitter/index.mdx

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -30,13 +30,17 @@ Get practical experience with Apollo GraphQL. Work with audio.
3030

3131
## Features
3232

33-
- Record, delete, like, retweet audio messages
33+
- Record, play, auto-play, delete, like, retweet audio messages
3434
- Auth, edit profile, real time notifications
3535
- Responsive design, color themes and dark mode
3636

3737
## Implementation details
3838

39-
You can find more implementation details in the <Link href="https://github.com/nemanjam/audio-twitter" variant="markdown" target="_blank" title="README.md">README.md</Link> file on Github.
39+
React Mic is used for recording the audio and Wavesurfer for rendering waveform and playing. The UI is build with default MaterialUI components. It has a number of Apollo CRUD operations, real time subscriptions and client side resolvers for managing state. It has social network functionalities like follow, like, retweet, notifications.
40+
41+
Data is stored in MongoDB using Mongoose and audio files are served via static folder.
42+
43+
For more implementation details check the <Link href="https://github.com/nemanjam/audio-twitter" variant="markdown" target="_blank" title="README.md">README.md</Link> file on Github.
4044

4145
## Lessons learned
4246

src/content/project/2024/12-09-hackernews-new-jobs/index.mdx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -43,7 +43,7 @@ Evaluate the potential of the idea and the level of interest for a website of th
4343

4444
This is a Next.js server side rendered app with default ShadcnUI components. Algolia API is used as a data source because HackerNews webserver has a very strict scraping policy. Minimal relevant data is stored in SQLite database which is used for fast and precise queuing. The query results are cached with Keyv LRU in memory cache to improve performance.
4545

46-
The app requires zero maintenance, the only insert query to parse a new month is automated using a `node-cron` scheduled task. The app is packed as a Docker image, either in Github Actions or locally, and is available for both `linux/amd64` and `linux/arm64` platforms. It also has Winston logger and Plausible analytics.
46+
The app requires zero maintenance, the only insert query to parse a new month is automated using a `node-cron` scheduled task. The app is packed as a Docker image, either in Github Actions or locally, and is available for both x86 and ARM platforms. It also has Winston logger and Plausible analytics.
4747

4848
You can find more implementation details in the <Link href="https://github.com/nemanjam/hn-new-jobs/tree/main#implementation-details" variant="markdown" target="_blank" title="README.md file">README.md</Link> file on Github.
4949

0 commit comments

Comments
 (0)