Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
265 commits
Select commit Hold shift + click to select a range
04e9e9c
fix: apple and discord emoji ssr
lovestaco Nov 17, 2025
c8373d2
fix: route collisions in png
lovestaco Nov 17, 2025
1f43ed9
fix: route collisions in svg
lovestaco Nov 17, 2025
c46cacc
fix: route collisions in mcp
lovestaco Nov 17, 2025
76521c1
fix: route collisions in tldr
lovestaco Nov 17, 2025
5e31c1b
fix: route collisions in cheatsheet
lovestaco Nov 17, 2025
8d932c7
fix: route collisions in tools
lovestaco Nov 17, 2025
2620e5d
fix: mandb
lovestaco Nov 19, 2025
50df567
fix: build only svg
lovestaco Nov 19, 2025
457e55f
rm compressor, streaming, build flags
lovestaco Nov 19, 2025
28b8561
fix: _ all except svg
lovestaco Nov 19, 2025
9ba8e30
fix: svg icon queries
lovestaco Nov 19, 2025
5b50850
Revert "fix: _ all except svg"
lovestaco Nov 19, 2025
d781f42
fix: _ all except png
lovestaco Nov 19, 2025
c71915d
fix: _t -> t
lovestaco Nov 19, 2025
02bcda4
fix: png icon queries
lovestaco Nov 19, 2025
f3ee01d
Revert "fix: _ all except png"
lovestaco Nov 19, 2025
43dbe0f
fix: man page merge conflicts
lovestaco Nov 19, 2025
6bb8795
Merge branch 'main' of github.com:HexmosTech/FreeDevTools into feat/ssr
lovestaco Nov 19, 2025
86a8eda
fix: make
lovestaco Nov 22, 2025
45f8366
fix: mergeconflics
lovestaco Nov 22, 2025
423ba28
fix: man-pages to ssr
lovestaco Nov 22, 2025
656a425
fix: man-page pagination
lovestaco Nov 22, 2025
db7f728
fix: man pages crawlable
lovestaco Nov 22, 2025
83fa336
fix: t
lovestaco Nov 22, 2025
1592208
fix: t
lovestaco Nov 22, 2025
6cc8e46
fix: emoji builder
lovestaco Nov 22, 2025
8c8e5d8
fix: man pages sitemap
lovestaco Nov 22, 2025
b612449
fix: rm unecessary files
lovestaco Nov 22, 2025
06beb17
fix: emoji normalize db
lovestaco Nov 22, 2025
1089943
fix: emoji discord and apple
lovestaco Nov 22, 2025
cc99952
fix: emoji sitemap
lovestaco Nov 22, 2025
80264cc
fix: emoji sitemap
lovestaco Nov 22, 2025
e4842d0
fix: optimize emoji query
lovestaco Nov 22, 2025
89ca0fd
fix: optimize emoji query with paginated
lovestaco Nov 22, 2025
76a03b3
fix: emoji sanity check and fix issues
lovestaco Nov 22, 2025
df731e3
fix: mmap for all dbs
lovestaco Nov 22, 2025
10b0510
fix: _ mcp, tldr, t, c
lovestaco Nov 22, 2025
fbee6cc
fix: svg icons node sqlite
lovestaco Nov 23, 2025
97dca5f
fix: svg icons cache
lovestaco Nov 23, 2025
1ee4b3b
fix: revert _
lovestaco Nov 23, 2025
f3158d9
fix: svg parallelize
lovestaco Nov 23, 2025
5862d48
fix: svg queries
lovestaco Nov 23, 2025
46dae5c
fix: svg queries use precomputed
lovestaco Nov 23, 2025
0d08276
fix: svg db indexes
lovestaco Nov 23, 2025
931eb6a
fix: update convo
lovestaco Nov 23, 2025
a81a662
fix: svg db queries
lovestaco Nov 23, 2025
01dc521
fix: cheatsheet hashing and conversion for ssr
LinceMathew Nov 29, 2025
f4e65a0
no db in git
LinceMathew Nov 29, 2025
a3f32b8
fix: bun init
lovestaco Nov 29, 2025
d3e6f50
fix: db files
lovestaco Nov 29, 2025
2373089
fix: worker code
lovestaco Nov 29, 2025
f8c0abf
fix: banner
lovestaco Nov 29, 2025
15908f7
fix: mcp db
lovestaco Nov 29, 2025
ef96fae
fix: rm emoji util
lovestaco Nov 29, 2025
6157c5c
fix: add middleware and fix css
lovestaco Nov 29, 2025
3683f9f
fix: merge svg pages code
lovestaco Nov 29, 2025
f884d24
fix: merge man pages code
lovestaco Nov 29, 2025
e7d3218
fix: merge tools pages code
lovestaco Nov 29, 2025
5fe0c99
fix: merge tldr pages code
lovestaco Nov 29, 2025
c4a3328
fix: merge png pages code
lovestaco Nov 29, 2025
f60439b
fix: merge mcp pages code
lovestaco Nov 29, 2025
51b2ce0
fix: merge emoji pages code
lovestaco Nov 29, 2025
72f1e89
fix: merge cheatsheet pages code
lovestaco Nov 29, 2025
72fc314
fix: add eabanner to cheatsheets
lovestaco Nov 29, 2025
c31ab39
fix: start script
lovestaco Nov 29, 2025
1d3f943
refactor: Migrate TLDR page data management from file-based Python sc…
Amazing-Stardom Nov 29, 2025
402daee
fix: profiling
lovestaco Nov 29, 2025
eed7cc7
feat: Add `dev:light` script, optimize SQLite pragmas, and verify `ur…
Amazing-Stardom Nov 29, 2025
ae77a24
fix: hashing for manpages
LinceMathew Nov 29, 2025
39c1c9b
fixed-cluster-storing-issues
Amazing-Stardom Nov 29, 2025
85a4ad5
fixed-pagenumber-url-issues
Amazing-Stardom Nov 29, 2025
743bdcb
fix: change to dist serving
lovestaco Nov 29, 2025
7612acc
fix: pmdaemon tester
lovestaco Nov 29, 2025
591f4e4
feat: add `dev:light` script and update `tldr` sitemap generation and…
Amazing-Stardom Nov 29, 2025
54a7667
fix: pragma on catch
lovestaco Nov 29, 2025
c1cb84e
Merge branch 'feat/ssr-new' of github.com:HexmosTech/FreeDevTools int…
Amazing-Stardom Nov 29, 2025
99fa7c6
feat: Add `dev:light` script and update TLDR URL path prefix in `tldr…
Amazing-Stardom Nov 29, 2025
a823a76
refactor: migrate MCP data fetching from Astro Content Collections to…
LinceMathew Nov 30, 2025
99aeaab
fix: svg files
lovestaco Nov 30, 2025
10d1d48
fix: rm png util
lovestaco Nov 30, 2025
573de21
fix: db bench png
lovestaco Nov 30, 2025
84e23b7
fix: bench script for svg
lovestaco Nov 30, 2025
6f5d66a
fix: hasg utils
lovestaco Nov 30, 2025
41db536
removed-sitemap-added-in-make-file
Amazing-Stardom Nov 30, 2025
2f9275c
Merge branch 'feat/ssr-new' of github.com:HexmosTech/freedevtools int…
LinceMathew Nov 30, 2025
5670024
Merge branch 'feat/ssr-new' of github.com:HexmosTech/freedevtools int…
LinceMathew Nov 30, 2025
0ce5616
fix: svg cluster table to hash
lovestaco Nov 30, 2025
141197f
fix: prepare png db
lovestaco Nov 30, 2025
48b50fe
feat: Add `dev:light` script, document tldr page identification issue…
Amazing-Stardom Nov 30, 2025
314b63e
Merge branch 'feat/ssr-new' of github.com:HexmosTech/FreeDevTools int…
Amazing-Stardom Nov 30, 2025
c79fa87
fix: change png querying system
lovestaco Nov 30, 2025
93235d2
feat: converstion instructions
lovestaco Nov 30, 2025
76045ab
changed-bun-sqlite
Amazing-Stardom Nov 30, 2025
0b3e8dd
fix: add hash for emoji db
lovestaco Nov 30, 2025
8c1859c
fix: bun import, sqlite issues and refactoring
LinceMathew Nov 30, 2025
404b9bd
fix: emoji change to worker 1
lovestaco Nov 30, 2025
92e6d25
fix: emoji change to worker 2
lovestaco Nov 30, 2025
6132ef4
using bun for instead of node commands
LinceMathew Nov 30, 2025
c606f70
Merge branch 'feat/ssr-new' of github.com:HexmosTech/freedevtools int…
LinceMathew Nov 30, 2025
756f021
fix: setup dev mode
lovestaco Nov 30, 2025
b0c262d
fix: change make files to use bun
lovestaco Nov 30, 2025
5e50263
fix: bun commands
lovestaco Nov 30, 2025
9b6c417
fix: banner issue
lovestaco Nov 30, 2025
fc91744
fix: pmd scripts
lovestaco Nov 30, 2025
7e2fb61
fix: all make scripts
lovestaco Nov 30, 2025
ce3494e
fix: worker pool for cheatsheets
LinceMathew Nov 30, 2025
f02eff0
fix: curl command for testing
lovestaco Nov 30, 2025
7cd1851
fix: make commands
lovestaco Nov 30, 2025
b2c3f58
fix: readme.md
lovestaco Nov 30, 2025
f24d4c4
fix: setup script
lovestaco Nov 30, 2025
219927c
fix: kill ports
lovestaco Nov 30, 2025
cfca82b
fix: worker pool for manpages
LinceMathew Nov 30, 2025
669dc5d
fix: emoji db v1
lovestaco Nov 30, 2025
fc1138b
fix: svg db to v1
lovestaco Nov 30, 2025
ac8df8a
fix: png db to v1
lovestaco Nov 30, 2025
b05c01a
fix: build scripts
lovestaco Dec 1, 2025
4efa9e2
fix: worker pool for mcp
LinceMathew Dec 1, 2025
35c4e10
Merge branch 'feat/ssr-new' of github.com:HexmosTech/freedevtools int…
LinceMathew Dec 1, 2025
fa84313
feat: Add worker pool migration guide and update sitemap checker with…
Amazing-Stardom Dec 1, 2025
73ac1c1
feat: Implement sitemap index parsing in the sitemap checker, add a w…
Amazing-Stardom Dec 1, 2025
908cefa
fix: svg listing page speed
lovestaco Dec 1, 2025
cefb38b
feat: enhance sitemap checker with new comparison logic and PDF repor…
Amazing-Stardom Dec 1, 2025
418f686
fix: png listing page speed
lovestaco Dec 1, 2025
0ffb6d6
feat: sitemap reports, updating build configurations.
Amazing-Stardom Dec 1, 2025
30a92f4
Merge branch 'feat/ssr-new' of github.com:HexmosTech/FreeDevTools int…
Amazing-Stardom Dec 1, 2025
542ab1c
docs: Enhance sitemap checker README with new features and add plans …
Amazing-Stardom Dec 1, 2025
09d9d4e
docs: Add plans for sitemap checker improvements and tldr worker pool…
Amazing-Stardom Dec 1, 2025
1495c97
Merge branch 'main' of github.com:HexmosTech/FreeDevTools into feat/s…
lovestaco Dec 1, 2025
47ea97c
feat: Introduce TLDR database worker pool with schema updates and wor…
Amazing-Stardom Dec 1, 2025
6bcded0
fix: change hexmos -> hexmos-local.com
lovestaco Dec 1, 2025
b3cd264
fix: use cargo
lovestaco Dec 1, 2025
7a3324b
fix: cargo check
lovestaco Dec 1, 2025
325b6eb
Merge branch 'feat/ssr-new' of github.com:HexmosTech/FreeDevTools int…
Amazing-Stardom Dec 1, 2025
8015e5b
fix: use env for site and environment diff
lovestaco Dec 1, 2025
2a2b20b
fix: rate limit sitemap checker
lovestaco Dec 1, 2025
5794f72
fix: ignore public watchers
lovestaco Dec 2, 2025
f37f5b4
Merge branch 'feat/ssr-new' of github.com:HexmosTech/FreeDevTools int…
Amazing-Stardom Dec 2, 2025
3acc725
Merge branch 'feat/ssr-new' of github.com:HexmosTech/freedevtools int…
LinceMathew Dec 2, 2025
f2ddd10
fix: local domain name
lovestaco Dec 2, 2025
cf08834
fix: sitemap checker url normalization for local domain
lovestaco Dec 2, 2025
87cf7e7
Merge branch 'feat/ssr-new' of github.com:HexmosTech/FreeDevTools int…
Amazing-Stardom Dec 2, 2025
5a09b8d
fix: use ssr for sitemap
lovestaco Dec 2, 2025
4070381
fix: sitemap for prod and local gen
lovestaco Dec 2, 2025
24735a7
Merge branch 'feat/ssr-new' of github.com:HexmosTech/FreeDevTools int…
Amazing-Stardom Dec 2, 2025
48edb05
feat: Add PMDaemon test target for tldr, adjust server startup paths,…
Amazing-Stardom Dec 2, 2025
64e148c
Merge branch 'feat/ssr-new' of github.com:HexmosTech/freedevtools int…
LinceMathew Dec 2, 2025
df3d6ce
fix: svg all sitemap issues
lovestaco Dec 2, 2025
59e09da
Merge branch 'feat/ssr-new' of github.com:HexmosTech/FreeDevTools int…
Amazing-Stardom Dec 2, 2025
f459603
docs: Specialize worker conversion guide for tldr category and genera…
Amazing-Stardom Dec 2, 2025
009ab06
fix: png sitemap urls using db as SOTruth
lovestaco Dec 3, 2025
a74cb95
feat: Introduce new HTML page and refine tldr worker and worker pool …
Amazing-Stardom Dec 3, 2025
e74185f
fix: emoji tester
lovestaco Dec 3, 2025
8683a0d
fix: timeout
lovestaco Dec 3, 2025
a18ba7f
Revert "fix: timeout"
lovestaco Dec 3, 2025
be93c11
fix: hashed columns for emoji lookup
lovestaco Dec 3, 2025
505735d
fix: preview issues
lovestaco Dec 3, 2025
b910bec
feat: Implement tldr pre-rendering with Go script and update Astro pa…
Amazing-Stardom Dec 3, 2025
bf9d8f6
fix: emoji db new cluster table, precompute preview icons, hash colum…
lovestaco Dec 3, 2025
a9be921
feat: Convert TLDR Markdown to HTML and store
Amazing-Stardom Dec 3, 2025
d6c0fa1
wip: mcp ssr, latency fix
LinceMathew Dec 4, 2025
f179605
feat: Implement TLDR category with worker pool architecture and Markd…
Amazing-Stardom Dec 4, 2025
5140338
refactor: Remove `getPageByClusterAndName` method and optimize `getCl…
Amazing-Stardom Dec 4, 2025
e481ac2
refactor: Rename `getPageByClusterAndName` to `getPageByNameViaHash` …
Amazing-Stardom Dec 4, 2025
1a28d87
feat: Implement cluster previews with a new database table, worker qu…
Amazing-Stardom Dec 4, 2025
a483ad4
fix: emoji db version
lovestaco Dec 4, 2025
cae901b
fix: auth
lovestaco Dec 4, 2025
1684e3c
fix: index auth
lovestaco Dec 4, 2025
3335a23
fix: auth
lovestaco Dec 4, 2025
3811acd
fix: load ads based on env
lovestaco Dec 5, 2025
c109a60
fix: ignore
lovestaco Dec 5, 2025
420e5e3
feat: Implement category pagination and consolidate total counts into…
LinceMathew Dec 5, 2025
1a6f1c6
feat: Remove `more_info_url`, `examples`, and `raw_content` fields fr…
Amazing-Stardom Dec 5, 2025
bdf5a18
Merge branch 'feat/ssr-new' of github.com:HexmosTech/freedevtools int…
LinceMathew Dec 5, 2025
b3024c0
feat: Introduce paginated TLDR command fetching, add production and s…
Amazing-Stardom Dec 5, 2025
173df4d
feat: Refactor TLDR database schema and query functions, add html-pag…
Amazing-Stardom Dec 5, 2025
26c4653
fix: auth middleware
lovestaco Dec 5, 2025
530c213
fix: modularize middlewares
lovestaco Dec 5, 2025
84c8546
feat: Refactor TLDR data access to use a consolidated database schema…
Amazing-Stardom Dec 5, 2025
62e2575
Mojor-removal-unwanted-commands
Amazing-Stardom Dec 5, 2025
3fec992
feat: Complete First Iteration
Amazing-Stardom Dec 5, 2025
fa0676c
feat: Add critical CSS for improved performance, refactor TLDR platfo…
Amazing-Stardom Dec 5, 2025
03e6c90
Merge branch 'feat/ssr-new' of github.com:HexmosTech/FreeDevTools int…
Amazing-Stardom Dec 5, 2025
072a7a8
refactor: Update TLDR page querying to use explicit platform and slug…
Amazing-Stardom Dec 5, 2025
f366aef
Experimental worker
Amazing-Stardom Dec 5, 2025
8d448f6
Revert "Experimental worker"
Amazing-Stardom Dec 6, 2025
344c039
query-fix, category hashing and sitemap fix
LinceMathew Dec 6, 2025
4ddee96
fix sitemap pagination urls for mcp
LinceMathew Dec 6, 2025
27f824e
feat: Add Makefile targets for cheatsheets and man pages testing, swi…
LinceMathew Dec 6, 2025
68a3c4c
Merge branch 'feat/ssr-new' of github.com:HexmosTech/freedevtools int…
LinceMathew Dec 6, 2025
c2f984a
cheatsheet-path fix
LinceMathew Dec 6, 2025
84d32a0
fix: host for start-server.sh
lovestaco Dec 6, 2025
8dc1a9d
fix: make pin cpu serve prod
lovestaco Dec 6, 2025
7b2f0b0
fix: path
lovestaco Dec 6, 2025
e02e3d6
fix: add md
lovestaco Dec 6, 2025
610eaa6
fix: 1 worker 1 lsitner emoji, png, svg
lovestaco Dec 6, 2025
dbf82ae
fix: auth middleware
lovestaco Dec 6, 2025
17ed20f
feat: Refactor TLDR page metadata extraction to use frontmatter for t…
Amazing-Stardom Dec 6, 2025
f41cc82
refactor: standardize tldr page metadata structure and access, and ad…
Amazing-Stardom Dec 6, 2025
ba41de0
fix: various sitemap fixes
LinceMathew Dec 6, 2025
1a0533b
Merge branch 'feat/ssr-new' of github.com:HexmosTech/freedevtools int…
LinceMathew Dec 6, 2025
e1561a7
merge fixes
LinceMathew Dec 6, 2025
e88f605
merge fixes
LinceMathew Dec 6, 2025
4e7e2b1
feat: Add `html-page.html` and `metric_analisi.md`, enhance log analy…
Amazing-Stardom Dec 6, 2025
e1050c6
Merge branch 'feat/ssr-new' of github.com:HexmosTech/FreeDevTools int…
Amazing-Stardom Dec 6, 2025
58af848
added-body
Amazing-Stardom Dec 6, 2025
62c91d1
removed-comment
Amazing-Stardom Dec 6, 2025
e37a4ae
added-hey-logs
Amazing-Stardom Dec 6, 2025
c9948eb
fix: readme
lovestaco Dec 7, 2025
e0657f1
fix: readme
lovestaco Dec 7, 2025
db57c1e
feat: Implement tldr sitemap generation and dynamic serving via new d…
Amazing-Stardom Dec 7, 2025
e14ab35
refactor: Restructure frontend pages and tools by migrating to `_` pr…
Amazing-Stardom Dec 7, 2025
cd4caef
refactor: Remove unused `getStaticPaths` function and reduce bun's ma…
Amazing-Stardom Dec 7, 2025
00ea289
feat: link XSL stylesheet to sitemap and reduce Bun server's max old …
Amazing-Stardom Dec 7, 2025
256d6b3
Merge branch 'feat/ssr-new' of github.com:HexmosTech/FreeDevTools int…
Amazing-Stardom Dec 7, 2025
3a569b3
chore: Reduce Bun server memory, ensure TLDR page URLs have trailing …
Amazing-Stardom Dec 7, 2025
bd12577
chore: Ignore `tldr_to_db` script and reduce frontend server max old …
Amazing-Stardom Dec 7, 2025
6966712
Merge pull request #113 from HexmosTech/feat/ssr-tldr
Amazing-Stardom Dec 7, 2025
28ebcee
fix: use 8gb
lovestaco Dec 7, 2025
170c77c
feat: Refactor TLDR schema to use a cluster table, removing main page…
Amazing-Stardom Dec 7, 2025
a0aa4f7
feat: Introduce `cluster_hash` to the `pages` table for efficient clu…
Amazing-Stardom Dec 7, 2025
555e72e
fix: md
lovestaco Dec 7, 2025
15d1235
feat: Optimize TLDR sitemap generation with paginated queries, dynami…
Amazing-Stardom Dec 7, 2025
74ec6ad
fix: make
lovestaco Dec 7, 2025
fc554c0
fix: double cache size and tweak other params
lovestaco Dec 7, 2025
229e139
feat: Implement paginated man page display and sitemap generation wit…
LinceMathew Dec 7, 2025
1595a33
fix: try cahcing few queries data
lovestaco Dec 7, 2025
a085666
sitemap, schema fixes
LinceMathew Dec 7, 2025
9d4f868
fix: dont refresh cache
lovestaco Dec 7, 2025
c8f8e1e
fix: rm all pragma options
lovestaco Dec 7, 2025
33fed5f
feat: add astro debugger
lovestaco Dec 7, 2025
4e574ec
Merge branch 'feat/ssr-new' of github.com:HexmosTech/freedevtools int…
LinceMathew Dec 8, 2025
54fa49f
feat: Introduce `cluster_hash` for TLDR pages, optimizing queries and…
Amazing-Stardom Dec 8, 2025
e49ce53
feat: Optimize TLDR sitemap and cluster count retrieval via updated o…
Amazing-Stardom Dec 8, 2025
529c0a2
feat: Document proposed TLDR schema changes and add a `test` script t…
Amazing-Stardom Dec 8, 2025
c035c65
fix: working chrome profiler
lovestaco Dec 8, 2025
c301605
fix: fdt
lovestaco Dec 8, 2025
c7b656e
refactor: move tldr page title and description from metadata to direc…
Amazing-Stardom Dec 8, 2025
7aa1e14
feat: Refactor tldr page schema to use dedicated title and descriptio…
Amazing-Stardom Dec 8, 2025
3c2dfca
feat: select metadata column in paginated commands by cluster query
Amazing-Stardom Dec 8, 2025
5ffd6a2
fix: mapage path
LinceMathew Dec 8, 2025
0a35fbf
fix: bun to node
lovestaco Dec 8, 2025
92b5c84
fix: working cpu profiling on dev server
lovestaco Dec 9, 2025
dad1292
feat: working cpu profiling on prod server
lovestaco Dec 9, 2025
6599653
Merge branch 'feat/ssr-new' of github.com:HexmosTech/freedevtools int…
LinceMathew Dec 9, 2025
cf722e7
Merge pull request #112 from HexmosTech/ssr/cheatsheets
LinceMathew Dec 9, 2025
5236b02
test: Add performance test for tldr worker and update Makefile.
Amazing-Stardom Dec 17, 2025
222c05a
Merge branch 'feat/ssr-new' of github.com:HexmosTech/FreeDevTools int…
Amazing-Stardom Dec 17, 2025
24ac9a9
Remove unwanted documentation file.
Amazing-Stardom Dec 17, 2025
5c390eb
Merge pull request #114 from HexmosTech/feat/ssr-tldr-2
Amazing-Stardom Dec 17, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
12 changes: 11 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -152,4 +152,14 @@ frontend/db/emoji_data/*
frontend/db/all_dbs/emoji-db.db

# sitemap-checker
frontend/scripts/sitemap-checker/sitemap-checker
frontend/scripts/sitemap-checker/sitemap-checker
frontend/bun.lockb
frontend/scripts/tldr/sqlite-lookup
frontend/scripts/tldr/query.sql
frontend/env.local
.gitignore
.gitignore
frontend/env.prod
frontend/env.staging
frontend/bun.lockb
frontend/scripts/tldr/tldr_to_db
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -206,4 +206,4 @@ We welcome contributions! Here's how you can help:
6. [MuchiraIrungu](https://github.com/MuchiraIrungu)
7. [soham-founder](https://github.com/soham-founder)
8. [Janmesh23](https://github.com/Janmesh23)
9. [Jayant-Jeet](https://github.com/Jayant-Jeet)
9. [Jayant-Jeet](https://github.com/Jayant-Jeet)
7 changes: 4 additions & 3 deletions frontend/.gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -15,12 +15,13 @@ pnpm-debug.log*

# environment variables
.env
.env.production
.env.prod
.env.local
.env.staging

# macOS-specific files
.DS_Store

scripts/tool-banners/screenshots/*
scripts/pageSpeedReport/*

*.db
*.db*
4 changes: 0 additions & 4 deletions frontend/.vscode/extensions.json

This file was deleted.

55 changes: 54 additions & 1 deletion frontend/.vscode/launch.json
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,60 @@
"command": "./node_modules/.bin/astro dev",
"name": "Development server",
"request": "launch",
"type": "node-terminal"
"type": "node-terminal",
"skipFiles": ["**/node_modules/**"]
},
{
"type": "chrome",
"request": "launch",
"name": "Launch Chrome against localhost",
"url": "http://localhost:4321",
"webRoot": "${workspaceFolder}/src",
"sourceMapPathOverrides": {
"vite:///src/*": "${webRoot}/*"
},
"skipFiles": ["**/node_modules/**"]
},
{
"type": "node",
"request": "launch",
"name": "Profile Production Server",
"runtimeExecutable": "/home/lovestaco/.nvm/versions/node/v22.17.0/bin/node",
"runtimeArgs": [
"--cpu-prof",
"--cpu-prof-dir",
"${workspaceFolder}",
"--cpu-prof-name",
"production-profile-${date:yyyy-MM-dd-HH-mm-ss}.cpuprofile"
],
"program": "${workspaceFolder}/dist/server/entry.mjs",
"cwd": "${workspaceFolder}",
"skipFiles": ["**/node_modules/**"],
"sourceMaps": true,
"outFiles": ["${workspaceFolder}/dist/**/*.js"]
},
{
"type": "node",
"request": "launch",
"name": "Profile Production Server (Inspector)",
"runtimeExecutable": "/home/lovestaco/.nvm/versions/node/v22.17.0/bin/node",
"runtimeArgs": ["--inspect"],
"program": "${workspaceFolder}/dist/server/entry.mjs",
"cwd": "${workspaceFolder}",
"skipFiles": ["**/node_modules/**"],
"sourceMaps": true,
"outFiles": ["${workspaceFolder}/dist/**/*.js"],
"console": "integratedTerminal",
"internalConsoleOptions": "neverOpen"
}
],
"compounds": [
{
"name": "Launch Dev Server and Chrome",
"configurations": [
"Development server",
"Launch Chrome against localhost"
]
}
]
}
54 changes: 0 additions & 54 deletions frontend/.vscode/settings.json

This file was deleted.

95 changes: 46 additions & 49 deletions frontend/Makefile
Original file line number Diff line number Diff line change
@@ -1,8 +1,48 @@
.PHONY: build deploy run clean gen banners check-pagespeed deploy-no-pagespeed local-env sync-db update-db-to-b2 index-deploy local-prod-build
.PHONY: build deploy run clean install gen banners check-pagespeed deploy-no-pagespeed local-env sync-db update-db-to-b2 index-deploy serve start-prod stop-prod deploy-staging-ssr

# Run development server
run:
bun run dev

# Clean build artifacts
clean:
rm -rf dist/
rm -rf .astro/

install:
cd serve && bash setup_dev.sh

# Build the project
build:
npm run build
bun run build

serve:
bun run serve-ssr

start-prod:
cd serve && pmdaemon --config pmd.config.json start && bash pmd-pin.sh


stop-prod:
cd serve && pmdaemon delete all --force && bash kill-ports.sh && bash kill-ports.sh

deploy-staging-ssr:
@echo "⬆️ Deploying SSR build to server..."

@rsync -rvz --delete --info=progress2 --no-perms --no-owner --no-group --no-times \
./dist/ \
ubuntu@nats03:FreeDevTools/frontend/dist/

@rsync -rvz --delete --info=progress2 --no-perms --no-owner --no-group --no-times \
./.astro/ \
ubuntu@nats03:FreeDevTools/frontend/.astro/

@rsync -rvz --delete --info=progress2 --no-perms --no-owner --no-group --no-times \
./db/ \
ubuntu@nats03:FreeDevTools/frontend/db/

@echo "✅ SSR deployment completed successfully"


# Generate all tool banners
banners:
Expand Down Expand Up @@ -34,18 +74,9 @@ deploy2: build
# Deploy index.html: build then rsync index.html to a4.html
# Note: rsync without --delete flag will only add/update files, never delete
index-deploy:
npm run build:index
rsync -rvz --no-perms --no-owner --no-group --no-times --progress ./dist/index.html root@master-do:/tools/a4.html
rsync -rvz --no-perms --no-owner --no-group --no-times --progress ./dist/_astro/style* root@master-do:/tools/_astro/

# Run development server
run:
npm run dev

# Clean build artifacts
clean:
rm -rf dist/
rm -rf .astro/
bun run build:index
rsync -rvz --no-perms --no-owner --no-group --no-times --progress ./dist/index.html root@master:/tools/a4.html
rsync -rvz --no-perms --no-owner --no-group --no-times --progress ./dist/_astro/style* root@master:/tools/_astro/

# Generate a new tool (usage: make gen tool-name)
gen:
Expand All @@ -68,36 +99,6 @@ local-env:
convert-to-webp:
./scripts/convert-to-webp.sh "$(src)" "$(out)"



# Pull all DB files via Git LFS
# pull-db:
# @echo "🔎 Checking Git LFS..."
# @git lfs version || (echo "Git LFS not installed"; exit 1)

# @echo "⬇️ Fetching all LFS objects..."
# @git lfs fetch --all

# @echo "⬇️ Pulling DB-related LFS files..."
# @git lfs pull --include="db/**,frontend/db/**" --exclude=""

# @echo "📄 Listing LFS-tracked files (only DB paths)..."
# @git lfs ls-files | grep -E "db/|frontend/db/" || echo "No DB files tracked via LFS."

# @echo "📏 Showing DB file sizes..."
# @git lfs ls-files --size | grep -E "db/|frontend/db/" || true

# @echo "✅ Checking if DB files are actual binaries (not pointers)..."
# @for f in db/*.db frontend/db/*.db; do \
# if [ -f "$$f" ]; then \
# echo "File: $$f"; \
# head -n 3 $$f; \
# echo "---"; \
# fi; \
# done

# @echo "✅ DB pull completed."

init-rclone:
@echo "⬇️ Initializing Rclone..."
@if ! command -v rclone >/dev/null 2>&1; then \
Expand Down Expand Up @@ -160,9 +161,5 @@ update-db-to-b2:
--progress; \
echo "✅ Database file uploaded successfully"

# trigger build locally and deploy to production server via rsync
local-prod-build:
bash ./scripts/local-prod-build.sh

%:
@:
@:
89 changes: 66 additions & 23 deletions frontend/README.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,49 @@
## How to setup project

```
cd frontend
make install
```

### Dev

```
cd frontend
make run
```

### Build

```
cd frontend
make build
```

### Serve Built files via bun (simple)

```
cd frontend
make serve
```

### Serve built files via nginx -> pmdaemon -> bun (prod equivalent)

```
cd frontend
make serve-prod
```

### Test all kind of pages

```
cd frontend/serve
make curl-all-kind-of-page
```

###

---

## How to Test SEO for Your Project

Once your tool is partially or fully completed, you can run validation steps to identify any SEO issues.
Expand Down Expand Up @@ -31,29 +77,6 @@ Make sure to follow the same format for any new sections you
- https://seositecheckup.com/
- https://rankmath.com/tools/seo-analyzer/

<!-- ## Pull DBs to local repo

Run `make pull-db` in FreeDevTools/frontend folder.

1. List all LFS-tracked files

```
git lfs ls-files
```

2. Check whether the actual files (not pointers) are downloaded

```
git lfs status
```

3.

```
git lfs fetch --all
git lfs ls-files --size
``` -->

## Working with DB Files on Backblaze B2

To add or update a database (DB) file for a category:
Expand Down Expand Up @@ -86,3 +109,23 @@ To add or update a database (DB) file for a category:
4. **Referencing in Code**
- Always reference database files in your code using the path:
`db/all_dbs/your-db.db`

## Deploying to Staging

### Step 1: local:

```
make sync-db-to-local
make run bulid:icons
make deploy-staging-ssr
```

### Step 2: nats03:

```
cd FreeDevTools
git pull
make sync-db-to-local
make stop-prod
make start-prod
```
Loading