Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
73 commits
Select commit Hold shift + click to select a range
ff26a35
Bump core-js from 3.40.0 to 3.41.0
dependabot[bot] Apr 28, 2025
8eb50bf
Merge branch 'develop' into dependabot/npm_and_yarn/core-js-3.41.0
simonbs Apr 29, 2025
92f089d
Moves React dependencies to separate Dependabot group
simonbs Apr 29, 2025
7e32316
Merge pull request #581 from shapehq/dependabot/npm_and_yarn/core-js-…
simonbs Apr 29, 2025
3bdaace
Merge pull request #582 from shapehq/enhancement/group-react
simonbs Apr 29, 2025
9d4c019
Bump the everything-else group with 14 updates
dependabot[bot] Apr 29, 2025
90e4df9
ILogInHandler supports undefined account
simonbs Apr 29, 2025
7d35107
Merge pull request #585 from shapehq/dependabot/npm_and_yarn/everythi…
simonbs Apr 29, 2025
b879238
Adds permissions to GitHub Actions workflows
simonbs Apr 29, 2025
b667c3f
Replaces swagger-ui-react with unpkg
simonbs Apr 29, 2025
014d0d7
Installs dependencies
simonbs Apr 29, 2025
a4f1f9f
Upgrade to React 19
simonbs Apr 29, 2025
c3c003f
Fixes typo
simonbs Apr 29, 2025
ff3f840
Fixes typo
simonbs Apr 29, 2025
221cb50
Merge branch 'enhancement/replaces-swagger-ui-react' into enhancement…
simonbs Apr 29, 2025
7069b1a
Bump the everything-else group with 3 updates
dependabot[bot] May 1, 2025
0c329c8
feat: add linting for GHA
SMillerDev May 1, 2025
8d04d30
Merge pull request #590 from shapehq/dependabot/npm_and_yarn/everythi…
simonbs May 15, 2025
e14806c
Bump the react group with 4 updates
dependabot[bot] May 15, 2025
2bd13a1
Bump the everything-else group with 27 updates
dependabot[bot] Jun 1, 2025
b756ec7
Merge pull request #592 from shapehq/dependabot/npm_and_yarn/everythi…
simonbs Jun 1, 2025
35574f7
Merge branch 'develop' into enhancement/permissions-on-actions
simonbs Jun 3, 2025
92bd743
Merge branch 'develop' into enhancement/replaces-swagger-ui-react
simonbs Jun 3, 2025
2f05914
Merge branch 'develop' into enhancement/upgrade-to-react-19
simonbs Jun 3, 2025
0088f64
Merge pull request #586 from shapehq/enhancement/permissions-on-actions
simonbs Jun 3, 2025
14ff04d
Merge branch 'develop' into enhancement/replaces-swagger-ui-react
ulrikandersen Jun 3, 2025
9f535a0
Merge pull request #587 from shapehq/enhancement/replaces-swagger-ui-…
simonbs Jun 3, 2025
633fe61
Merge branch 'develop' into enhancement/upgrade-to-react-19
simonbs Jun 3, 2025
4f9ae49
Fixes reverted React 19
simonbs Jun 3, 2025
1f1f118
Merge pull request #588 from shapehq/enhancement/upgrade-to-react-19
simonbs Jun 3, 2025
b084173
Merge branch 'develop' into dependabot/npm_and_yarn/react-366fe8c139
simonbs Jun 6, 2025
943c3f6
Merge pull request #589 from shapehq/dependabot/npm_and_yarn/react-36…
simonbs Jun 6, 2025
98bf1dc
Merge branch 'develop' into patch-2
simonbs Jun 6, 2025
4ccba12
fix(docs): update readme to mention Framna
SMillerDev Jun 6, 2025
c0991a2
Merge pull request #591 from SMillerDev/patch-2
simonbs Jun 6, 2025
e9cf4da
Merge branch 'develop' into patch-3
simonbs Jun 6, 2025
5a956a5
Merge pull request #593 from SMillerDev/patch-3
simonbs Jun 6, 2025
b7e02d5
Update README.md
simonbs Jun 6, 2025
22db055
Merge pull request #594 from shapehq/enhancement/elaborate-shape-weekend
simonbs Jun 6, 2025
ca706e6
Update action-lint.yml
simonbs Jun 6, 2025
6ff5180
Fixes linting errors
simonbs Jun 6, 2025
5bb36e2
Fixes linting errors
simonbs Jun 6, 2025
64abc28
Fixes linting errors
simonbs Jun 6, 2025
31a295e
Points to postgres 17.5
simonbs Jun 6, 2025
8ab7a27
Fixes linting error
simonbs Jun 6, 2025
cfe098a
Fixes checkout step
simonbs Jun 6, 2025
a8675d0
Merge pull request #595 from shapehq/enhancement/adds-workflow-dispat…
simonbs Jun 6, 2025
7227aaf
Bump the everything-else group with 24 updates
dependabot[bot] Jul 1, 2025
a6dce07
Merge pull request #597 from shapehq/dependabot/npm_and_yarn/everythi…
simonbs Jul 3, 2025
24d7122
Bump the npm_and_yarn group with 2 updates
dependabot[bot] Jul 3, 2025
04415f4
Merge pull request #596 from shapehq/dependabot/npm_and_yarn/npm_and_…
simonbs Jul 5, 2025
12346c8
Bump the react group with 4 updates
dependabot[bot] Aug 1, 2025
608a698
Merge pull request #598 from shapehq/dependabot/npm_and_yarn/react-7a…
simonbs Sep 1, 2025
792d1d1
Enhance project caching
oscarlund121 Sep 22, 2025
0b8f984
copolit-comments updates
oscarlund121 Sep 29, 2025
2777b8b
route.ts - trailing spaces
oscarlund121 Sep 29, 2025
d61281f
refresfed state sset to false
oscarlund121 Sep 29, 2025
02dfb39
Improves API caching and error handling
oscarlund121 Sep 29, 2025
bc99998
post til refreshProjects
oscarlund121 Sep 29, 2025
ff9d727
Updates fetch request to use POST method
oscarlund121 Sep 29, 2025
315a43e
Use refreshing state to show loading
ulrikandersen Sep 29, 2025
42ee244
Removes unused ref and simplifies project refresh logic
oscarlund121 Sep 30, 2025
e1a2a93
Refactors project API endpoints to support refresh logic
oscarlund121 Sep 30, 2025
d577e9d
Refactors project data handling and API structure
oscarlund121 Sep 30, 2025
2a2f1e1
Handles decode errors as missing cache
oscarlund121 Sep 30, 2025
a9a64de
complerte removal of catch error
oscarlund121 Sep 30, 2025
f1c4d29
Removes unused setProjects function from context
oscarlund121 Sep 30, 2025
3570836
Merge pull request #602 from shapehq/optimize-project-doc-loadtime
ulrikandersen Sep 30, 2025
aafb080
Adds project refresh functionality to context and UI
oscarlund121 Oct 1, 2025
c869883
useCallback from react added to avoid loading loop
oscarlund121 Oct 1, 2025
5733e60
Removes unnecessary dependency from useEffect hook
oscarlund121 Oct 1, 2025
c6a4e3f
Revert "Removes unnecessary dependency from useEffect hook"
oscarlund121 Oct 1, 2025
dd24356
Merge pull request #605 from shapehq/refresh-project-navigation
ulrikandersen Oct 1, 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
9 changes: 8 additions & 1 deletion .github/dependabot.yml
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,13 @@ updates:
schedule:
interval: "monthly"
groups:
all:
react:
patterns:
- "react"
- "react-*"
everything-else:
patterns:
- "*"
exclude-patterns:
- "react"
- "react-*"
31 changes: 31 additions & 0 deletions .github/workflows/action-lint.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@
name: GitHub Actions linting

on:
workflow_dispatch:
push:
branches:
- develop
- main
paths:
- '.github/workflows/*.ya?ml'
pull_request:
paths:
- '.github/workflows/*.ya?ml'

concurrency:
group: "action-lint-${{ github.ref }}"
cancel-in-progress: ${{ github.event_name == 'pull_request' }}

jobs:
workflow_syntax:
permissions:
contents: read
name: Lint actions
uses: move-agency/actions-templates/.github/workflows/actionlint.yml@main
workflow_security:
permissions:
# required for workflows in private repositories
contents: read
actions: read
name: Check action security
uses: move-agency/actions-templates/.github/workflows/zizmor.yml@main
4 changes: 4 additions & 0 deletions .github/workflows/build-docker-image.yml
Original file line number Diff line number Diff line change
@@ -1,4 +1,6 @@
name: Build Docker Image
permissions:
contents: read
on:
workflow_dispatch:
pull_request:
Expand All @@ -14,5 +16,7 @@ jobs:
steps:
- name: Checkout Repository
uses: actions/checkout@v4
with:
persist-credentials: false
- name: Build Docker Image
run: docker build .
4 changes: 4 additions & 0 deletions .github/workflows/build.yml
Original file line number Diff line number Diff line change
@@ -1,4 +1,6 @@
name: Build
permissions:
contents: read
on:
workflow_dispatch:
pull_request:
Expand All @@ -14,6 +16,8 @@ jobs:
steps:
- name: Checkout Repository
uses: actions/checkout@v4
with:
persist-credentials: false
- name: Setup Node.js
uses: actions/setup-node@v4
with:
Expand Down
15 changes: 11 additions & 4 deletions .github/workflows/check-changes-to-env.yml
Original file line number Diff line number Diff line change
@@ -1,4 +1,8 @@
name: Check Changes to Env
permissions:
contents: read
pull-requests: read
issues: write
on:
pull_request:
types: [opened, synchronize]
Expand All @@ -12,16 +16,19 @@ jobs:
- name: Get PR Number
id: get-pr-number
run: |
PR_NUMBER=$(echo "${{ github.ref }}" | awk 'BEGIN { FS = "/" } ; { print $3 }')
echo "pr-number=${PR_NUMBER}" >> $GITHUB_OUTPUT
PR_NUMBER=$(echo "${GITHUB_REF}" | awk 'BEGIN { FS = "/" } ; { print $3 }')
echo "pr-number=${PR_NUMBER}" >> "$GITHUB_OUTPUT"
- name: Comment when dummy.txt changes
uses: actions/github-script@v7
env:
PR_NUMBER: ${{ steps.get-pr-number.outputs.pr-number }}
REPO: ${{ github.repository }}
with:
script: |
const filename = ".env.example"
const filenameSha256 = await sha256(filename)
const diffURL = "https://github.com/${{ github.repository }}/pull/${{ steps.get-pr-number.outputs.pr-number }}/files#diff-" + filenameSha256
const docsURL = "https://github.com/${{ github.repository }}/wiki/Setting-Environment-Variables"
const diffURL = `https://github.com/${process.env.REPO}/pull/${process.env.PR_NUMBER}/files#diff-${filenameSha256}`
const docsURL = `https://github.com/${process.env.REPO}/wiki/Setting-Environment-Variables`
const commentBody = `⚠️ It looks like [${filename}](${diffURL}) has changed. Remember to update the [Setting Environment Variables](${docsURL}) article accordingly.`
const listComments = await github.rest.issues.listComments({
...context.repo,
Expand Down
7 changes: 6 additions & 1 deletion .github/workflows/lint.yml
Original file line number Diff line number Diff line change
@@ -1,4 +1,6 @@
name: Lint
permissions:
contents: read
on:
workflow_dispatch:
pull_request:
Expand All @@ -12,7 +14,10 @@ jobs:
name: Lint
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Checkout Repository
uses: actions/checkout@v4
with:
persist-credentials: false
- name: Install modules
run: npm install
- name: Run ESLint
Expand Down
4 changes: 4 additions & 0 deletions .github/workflows/run-unit-tests.yml
Original file line number Diff line number Diff line change
@@ -1,4 +1,6 @@
name: Run Unit Tests
permissions:
contents: read
on:
workflow_dispatch:
pull_request:
Expand All @@ -14,6 +16,8 @@ jobs:
steps:
- name: Checkout Repository
uses: actions/checkout@v4
with:
persist-credentials: false
- name: Setup Node.js
uses: actions/setup-node@v4
with:
Expand Down
6 changes: 5 additions & 1 deletion .github/workflows/test-sql-queries.yml
Original file line number Diff line number Diff line change
@@ -1,4 +1,6 @@
name: Test SQL Queries
permissions:
contents: read
on:
workflow_dispatch:
pull_request:
Expand All @@ -11,7 +13,7 @@ jobs:
runs-on: ubuntu-latest
services:
postgres:
image: postgres:latest
image: postgres:17.5
ports:
- 5432:5432
options: >-
Expand All @@ -26,6 +28,8 @@ jobs:
steps:
- name: Checkout repository
uses: actions/checkout@v4
with:
persist-credentials: false
- name: Wait for PostgreSQL to be ready
run: |
until pg_isready -h localhost -p 5432; do
Expand Down
4 changes: 2 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -82,8 +82,8 @@ Two following long-lived branches exist:

## ❤️ The Product of a Shape Weekend

Every year we go on Shape Weekend, three days where all employees in Shape get together for a hackathon to build amazing products. In 2023, a team of Shape developers with a passion for documentation and spec-driven development built Framna Docs and we've used it daily ever since!
Before we became Framna, our company was known as Shape. Every year, we held "Shape Weekend", a three-day hackathon where all employees came together to build exciting new products. In 2023, one of those teams, passionate about documentation and spec-driven development, built Framna Docs. We have used it daily ever since.

---

Framna Docs is built with ❤️ by [Shape](https://shape.dk) in Denmark. Oh, and [we are hiring](https://careers.shape.dk) 🤗
Framna Docs is built with ❤️ by [Framna](https://framna.com/) in Denmark. Oh, and [we are hiring](https://framna.com/careers) 🤗
23 changes: 21 additions & 2 deletions docker-compose.yaml
Original file line number Diff line number Diff line change
@@ -1,4 +1,3 @@
version: '3.8'
services:
cache:
image: redis:6.2-alpine
Expand All @@ -8,6 +7,26 @@ services:
command: redis-server --save 20 1 --loglevel warning
volumes:
- cache:/data

postgres:
image: postgres:16.8
restart: always
ports:
- '5432:5432'
environment:
- POSTGRES_USER=oscar
- POSTGRES_PASSWORD=passw0rd
- POSTGRES_DB=shape-docs

app:
build: .
ports:
- '3000:3000'
env_file:
- .env
depends_on:
- cache

volumes:
cache:
driver: local
driver: local
Loading