Commits

  1. 197c77bsilen2026-05-11 19:17

    chore: update version

  2. a477db1silen2026-05-11 19:13

    chore: remove unused last_commit_date method and collapse nested if

  3. dc943casilen2026-05-11 19:12

    fix: wrap create_namespace INSERTs in a transaction Both the namespace and namespace_members inserts now run within a single BEGIN/COMMIT transaction on the same connection. If the second insert fails, the first is rolled back, preventing orphan namespace records.

  4. 61bea90silen2026-05-11 19:11

    perf: introduce RepoHandle to open git repo once per request Previously each page view opened the git repo 5-8+ times (config load, commits, file listing, file reads, slides). RepoHandle opens the repo once and provides get_commits, read_file, list_files, and load_config_with_raw as methods on the open handle, eliminating redundant Repository::open calls.

  5. 8721eedsilen2026-05-11 19:06

    perf: change git_backend::Config::project_root() to return &str Avoids a String allocation on every call. Since project_root() is called on every git request, this removes unnecessary heap allocations from the hot path.

  6. e725fcbsilen2026-05-11 19:05

    perf: add index on tokens(created_at) and cleanup expired tokens on login Add a database index on tokens.created_at to speed up the expiry filter in get_token_user/get_username_by_token queries. Wire up cleanup_expired_tokens() to run on every session creation, preventing unbounded table growth.

  7. 7118da7silen2026-05-11 19:05

    perf: filter repos by name before opening git repos in search search_repos_with_info() previously opened every git repository to get commit dates before filtering by name. Now filters directory names first and only opens matching repositories.

  8. 05a76d1silen2026-05-11 19:04

    perf: combine user_has_namespace_access into single JOIN query Previously this method ran two separate queries (owner check + member check). Now uses a single LEFT JOIN query with OR condition, halving the DB round trips for namespace access checks.

  9. 74dcdfcsilen2026-05-11 19:04

    perf: eliminate redundant namespace existence check in git auth path is_authenticated() already checks if the namespace exists via get_namespace_by_name(). Previously ensure_namespace_exists() performed the same query again. Now is_authenticated() returns whether the namespace exists, and ensure_namespace_exists() skips the check when called with a known-nonexistent namespace.

  10. 91ac0fdsilen2026-05-11 19:02

    perf: reduce get_username_from_request from 2 DB queries to 1 Add get_username_by_token() method that JOINs tokens and users tables in a single query, eliminating the separate get_user_by_id() call. Also add cleanup_expired_tokens() for future use.

  11. cd58df2silen2026-05-11 19:02

    perf: eliminate duplicate git reads for FigConfig by returning raw content alongside parsed config FigConfig::load(), FigConfig::read_raw(), and FigConfig::config_filename() each opened the git repo and walked the tree independently, causing 2-4x redundant reads per page view. Replace with FigConfigWithRaw struct that returns all three in a single pass, and update all call sites accordingly.

  12. f362480silen2026-05-11 18:35

    chore: update version

  13. 1f8515csilen2026-05-11 18:04

    chore: update version

  14. 985d549silen2026-05-11 17:51

    chore: update version

  15. 636d853silen2026-05-11 17:19

    chore: update version

  16. fa22dd0silen2026-05-10 18:45

    chore: update version

  17. 7bbf15esilen2026-05-10 16:44

    chore: update version

  18. 4bd06e3silen2026-05-10 15:29

    chore: update version

  19. dedef4fsilen2026-05-09 10:24

    fix: tabs

  20. 8896e85silen2026-05-09 10:23

    feat: add present tab for slide-based presentations from markdown files Add a present tab to the repo view that renders markdown files as slides with fullscreen mode and keyboard/click navigation. Configure via .fig.toml with [present] section containing files array and template vars for mustache replacement. Includes new md module for mustache, AST, and HTML conversion.

  21. c875c72silen2026-05-02 18:59

    chore: update version

  22. a500862silen2026-05-02 18:11

    fix: skills

  23. b66daeasilen2026-05-02 17:58

    chore: update version

  24. e5d8801silen2026-04-25 12:43

    chore: update version

  25. a0f9a94silen2026-04-25 10:17

    chore: update version

  26. 5da650csilen2026-04-25 10:16

    refactor: naming

  27. 066e00fsilen2026-04-25 09:52

    fix: remove typst handling

  28. 5595a2dsilen2026-04-13 20:08

    chore: update version

  29. e7b8375silen2026-04-13 19:39

    chore: update version

  30. 6c68010silen2026-04-13 19:37

    chore: update version

  31. ee83d45silen2026-04-13 18:57

    chore: update version

  32. e012a53silen2026-04-13 18:54

    chore: update version

  33. 4e08e00silen2026-04-13 18:50

    chore: update version

  34. bc3aceesilen2026-04-13 18:31

    chore: update version

  35. f463794silen2026-04-13 18:17

    chore: update version

  36. 0164b3bsilen2026-04-13 18:09

    fix: logging

  37. a8d6ff8silenlocatelli2026-04-13 06:55

    fix: fig svg

  38. bbd6aadsilenlocatelli2026-04-13 06:47

    fix: logo

  39. 0da6bf9silen2026-04-11 15:09

    fix: build

  40. 66b9033silen2026-04-08 17:38

    chore: version

  41. 323709dsilen2026-04-08 17:07

    chore: version

  42. 62d493fsilen2026-04-08 16:48

    chore: version

  43. d189041silen2026-04-08 16:46

    fix: adjust config

  44. 5ff42e1silenlocatelli2026-04-08 07:19

    chore: ignore

  45. b9100efsilenlocatelli2026-04-08 07:17

    chore: ignore for view

  46. 2a7f551silen2026-04-07 18:13

    chore: version

  47. 6ad081fsilen2026-04-07 15:47

    chore: version

  48. ab54494silen2026-04-06 11:05

    chore: docs

  49. d7abcd6silen2026-04-06 10:51

    chore: version

  50. f41e24csilen2026-04-06 10:46

    fix: .git dupilcates

  51. ae3a763silen2026-04-06 09:48

    chore: version

  52. 63b8f43silen2026-04-06 09:46

    chore: docs

  53. 9c4ce0asilen2026-04-06 09:27

    fix: repo view

  54. 0dbbb6bsilen2026-04-06 09:04

    fic

  55. aad421bsilen2026-04-06 08:43

    refactor(db): split db module into topic-based submodules Split src/db.rs into separate files by topic: - mod.rs: Database struct and initialization - users.rs: User CRUD operations - namespaces.rs: Namespace operations and access control - tickets.rs: Signup ticket operations - tokens.rs: Session token operations

  56. cb39b62silen2026-04-06 08:27

    fix: concurrent db connections

  57. 87057dbsilen2026-04-06 07:57

    refactor: config

  58. 4dad71esilen2026-04-06 07:29

    fix: remove not needed features

  59. 4858bd5silen2026-04-05 17:23

    refactor: remove JSON API endpoints except init Remove all JSON API endpoints, keeping only: - HTML UI endpoints for auth (signup, login, namespace creation) - New UI logout handler replacing JSON logout - Admin page with form-based API key authentication Also adds extensive logging to git backend HTTP operations. BREAKING CHANGE: All /api/* endpoints removed except git init

  60. c10f9c0silen2026-04-05 16:51

    chore: version

  61. 24c43c1silen2026-04-05 16:49

    feat: add admin page with API key protection Add /admin endpoint protected by API_KEY that shows: - Database tables tab with row counts - Namespaces tab with owners and member access details - Users tab with all registered users Includes new database queries: - get_all_users() - get_namespace_members() - get_all_tables()

  62. e00c486silen2026-04-05 16:14

    chore: version

  63. aa5528dSilen Locatelli2026-04-05 15:59

    chore: version

  64. 07e5540Silen Locatelli2026-04-05 15:57

    fix: remove space in breadcrumb namespace link Fix the namespace breadcrumb link in repo view that had an extra space causing broken navigation back to namespace.

  65. 18a4467Silen Locatelli2026-04-05 15:50

    chore: version

  66. 00a18e5Silen Locatelli2026-04-05 15:42

    chore: bump version to 0.1.19

  67. 3324059Silen Locatelli2026-04-05 15:37

    fix(settings): make settings a standalone page - Fix route order: move /settings before /{namespace} to prevent namespace matching - Update breadcrumb from 'Namespaces / Settings' to 'Home / Settings' - Update navigation: show username as text with separate Settings link - Add hurl test for settings page functionality

  68. f1b493aSilen Locatelli2026-04-05 15:16

    chore: version

  69. 103b834Silen Locatelli2026-04-05 15:12

    fix: email in db

  70. 062f345Silen Locatelli2026-04-05 14:55

    feat: use user email and name for git commits - Add email field to User struct and database schema - Require email during signup (no fallback) - Create settings page for users to update their email - Update bare_init to use username and email for git author info - Link username in navbar to settings page - Return error if user tries to create repo without email set

  71. b604d0cSilen Locatelli2026-04-05 14:41

    chore: version

  72. 49ac64bSilen Locatelli2026-04-05 14:37

    fix: add git to docker image

  73. 03946b6Silen Locatelli2026-04-05 14:12

    chore: version''

  74. 3809d57Silen Locatelli2026-04-05 13:39

    fix: port

  75. aec52baSilen Locatelli2026-04-05 13:36

    expose port 80 by default

  76. 18a98c4Silen Locatelli2026-04-05 12:45

    chore: bump version

  77. 34a33afSilen Locatelli2026-04-05 12:39

    refactor: remove unused run function from git_backend

  78. 47ab603Silen Locatelli2026-04-05 12:35

    chore: change default port to 80, set justfile PORT to 8080

  79. 4de36b1Silen Locatelli2026-04-05 12:27

    fix: format

  80. cab3598Silen Locatelli2026-04-05 12:02

    feat: prepare for deploy

  81. 4f1d206Silen Locatelli2026-04-04 16:06

    fix: release

  82. 5fc23b1Silen Locatelli2026-04-04 15:30

    feat: better auth flow

  83. f6442ecSilen Locatelli2026-04-04 12:44

    feat: add RESET_DB env var and merge migrations - Add RESET_DB environment variable support - set to 'true' to reset database at startup - Merge migrations into single init_tables function - Remove separate migrate_tickets_table function (now handled in initial schema)

  84. 6952949Silen Locatelli2026-04-04 12:19

    feat: redirect to overview after login if user has namespaces - Add user_has_any_namespaces database method - After login: redirect to home page if user already has namespaces - After login: show Create Namespace page only if user has no namespaces - Uses HX-Redirect header for seamless navigation

  85. 4b6603dSilen Locatelli2026-04-04 12:16

    fix: check namespace access for create repo button and fix logout - Only show Create repo button if user has access to the namespace - Fix logout to work with session cookies (not just Bearer tokens) - Logout now checks for session cookie as fallback when no Bearer token

  86. b9f2a02Silen Locatelli2026-04-04 12:12

    feat: add breadcrumb navigation - Add breadcrumb navigation to repository view: Namespaces / {namespace} / {repo} - Add breadcrumb navigation to namespace view: Namespaces / {namespace} - Breadcrumb links are clickable for easy navigation back to parent pages

  87. d72abdeSilen Locatelli2026-04-04 12:10

    feat: add namespace and repo management UI with auth improvements - Add repository creation form in namespace view (hidden until clicked) - Show repos in table format with last commit date - Add backend search for repositories in namespace view - Show namespaces in table format with owner username - Add backend search for namespaces on homepage - Hide Login/Signup links when user is logged in - Show username and Logout link when authenticated - Add get_user_by_id database method - Add get_repos_with_info and search_repos_with_info git methods - Add namespace search with owner info database methods - Fix route ordering to prevent conflicts with git endpoints

  88. c958b34Silen Locatelli2026-04-04 11:50

    feat: auth

  89. 0886733Silen Locatelli2026-04-03 14:50

    feat: initial commit on repo init and graceful empty repo handling - Create initial commit with .fig file when initializing repos - Handle unborn branches gracefully in git/bare.rs functions - Fix error handling: replace unwrap() with proper Result handling - Remove non-existent custom.css reference from layout - Add test descriptions to README test content - Add hurl test for repo view

  90. e1c39a7Silen Locatelli2026-04-02 18:25

    feat: ui

  91. 47e3362Silen Locatelli2026-04-02 16:11

    fix: ci release

  92. fbb1f6fSilen Locatelli2026-04-01 20:19

    fix: wrong place for scripts

  93. e143defSilen Locatelli2026-04-01 20:13

    fix: releaserc

  94. 55c18caSilen Locatelli2026-04-01 20:08

    fix: force version

  95. 7cba686Silen Locatelli2026-04-01 19:50

    chore: adjust port

  96. 3f51213Silen Locatelli2026-04-01 19:48

    feat: add up endpoint

  97. 11c5e47Silen Locatelli2026-04-01 19:47

    fix: init

  98. c74bdf7Silen Locatelli2026-03-28 15:11

    feat: init repo

  99. ca837dbSilen Locatelli2026-03-27 20:44

    improve

  100. a754961Silen Locatelli2026-03-26 17:10

    intermediate

  101. a0fad4cSilen Locatelli2026-03-26 17:10

    intermediate

  102. 005dbb7Silen Locatelli2026-03-26 16:42

    feat: initial commit

  103. bec8d84Silen Locatelli2026-03-26 15:37

    Initial commit