Commit Graph

102 Commits

Author SHA1 Message Date
Lucas Smith
fd7c1fea1c chore: upgrade next (#1300) 2024-09-03 09:48:54 +10:00
David Nguyen
1028184cf2 feat: initial i18n marketing implementation (#1223)
## Description

This PR introduces an initial i18n implementation using
[Lingui](https://lingui.dev).

We plan to combine it with Crowdin which will provide AI translations
when PRs are merged into main.

We plan to rollout i18n to only marketing for now, and will review how
everything goes before continuing to introduce it into the main
application.

## Reasoning

Why not use i18n-next or other alternatives?

To hopefully provide the best DX we chose Lingui because it allows us to
simply wrap text that we want to translate in tags, instead of forcing
users to do things such as:

- Update the text to `t('some-text')`
- Extract it to the file
- The text becomes a bit unreadable unless done correctly

Yes, plugins such as i18n-ally and Sherlock exist to simplify these
chores, but these require the user to be correctly setup in vscode, and
it also does not seem to provide the required configurations for our
multi app and multi UI package setup.

## Super simple demo

```html
// Before
<p>Text to update</p>

// After
<p>
  <Trans>Text to update</Trans>
</p>
```

## Related Issue

Relates to #885 but is only for marketing for now.

Another branch is slowly being prepared for the changes required for the
web application while we wait to see how this goes for marketing.

## Changes Made

Our configuration does not follow the general standard since we have
translations that cross:
- Web app
- Marketing app
- Constants package
- UI package

This means we want to separate translations into:
1. Marketing - Only translations extracted from `apps/marketing`
2. Web - Only translations extracted from `apps/web`
3. Common - Translations from `packages/constants` and `packages/ui`

Then we bundle, compile and minify the translations for production as
follows:
1. Marketing = Marketing + Common
2. Web = Web + Common

This allows us to only load the required translations when running each
application.

Overall general changes: 
- Add i18n to marketing
- Add core i18n setup to web
- Add pre-commit hook and GH action to extract any new <Trans> tags into
the translation files

<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit


- **New Features**
- Added Romanian localization for marketing messages to improve
accessibility for Romanian-speaking users.
- Introduced German and English translation modules and PO files to
enhance the application's internationalization capabilities.
- Integrated internationalization support in the RootLayout component
for dynamic language settings based on server-side configurations.
- Enhanced the Enterprise component with translation support to adapt to
user language preferences.
- Added a `<meta>` tag to prevent Google from translating the page
content, supporting internationalization efforts.

- **Bug Fixes**
- Resolved minor issues related to the structure and accessibility of
translation files.

- **Chores**
- Updated project dependencies to support the new localization features
and ensure stability.

<!-- end of auto-generated comment: release notes by coderabbit.ai -->

---------

Co-authored-by: Lucas Smith <me@lucasjamessmith.me>
Co-authored-by: Crowdin Bot <support+bot@crowdin.com>
Co-authored-by: github-actions <github-actions@documenso.com>
2024-07-26 14:56:42 +10:00
David Nguyen
d6ec3f252a feat: add upload translation workflow 2024-07-23 13:08:43 +10:00
David Nguyen
5b488c2ae4 feat: add pull translation workflow 2024-07-23 12:05:35 +10:00
Adithya Krishna
cc4efddabf chore: updated triage label 2024-05-08 17:03:57 +05:30
Adithya Krishna
5d5d0210fa chore: update github actions (#1085)
**Description:**

This PR updates and adds a new action to assign `status: assigned` label

---------

Signed-off-by: Adithya Krishna <aadithya794@gmail.com>
2024-05-08 11:52:26 +07:00
David Nguyen
fc34f1c045 chore: set default PR template 2024-03-24 17:01:21 +08:00
Mythie
8e813ab2ac fix: use docker manifests for multiarch 2024-03-07 22:16:37 +11:00
Lucas Smith
51f60926ce fix: re-add buildx and qemu 2024-03-07 10:27:14 +00:00
Lucas Smith
2ccc2f22de chore: back to docker buildx 2024-03-07 10:24:17 +00:00
Lucas Smith
35b2405921 chore: use warpbuild for docker publishing 2024-03-07 10:02:33 +00:00
Lucas Smith
b9b57f16c0 fix: use matrix build 2024-03-07 05:05:35 +00:00
Lucas Smith
82efc5f589 fix: use docker buildx and push 2024-03-07 04:07:55 +00:00
Lucas Smith
8a9588ca65 fix: fetch tags for publish action 2024-03-07 03:49:03 +00:00
Mythie
2cce6dc2e5 feat: tidy docker setup
Tidy the docker setup and include a Github Action
for publishing docker containers to DockerHub and
Github Container Registry.

Also add a small README file with docker hosting instructions.
2024-03-06 15:46:51 +11:00
Lucas Smith
f6f9c301da feat(ci): cache github workflow actions (#804) 2024-03-05 10:04:06 +11:00
David Nguyen
e63122a718 chore: update github feature template (#849) 2024-01-23 11:28:11 +11:00
Gautam Hegde
67aebaac1a Update improvement.yml code quality 2024-01-16 01:14:48 +05:30
Gautam Hegde
a593e045b5 Update improvement.yml 2024-01-16 00:08:04 +05:30
nafees nazik
6065140715 feat: cache layers 2024-01-06 15:29:19 +05:30
nafees nazik
34a59d2db3 fix: cache 2024-01-06 15:18:33 +05:30
nafees nazik
ba37633ecd fix: revert 2024-01-06 15:18:09 +05:30
nafees nazik
46e83d65bb feat: cache docker 2024-01-06 15:14:28 +05:30
nafees nazik
6d1ad179d4 feat: add clean cache workflow 2024-01-06 13:30:21 +05:30
nafees nazik
8eed13e275 fix: remove additional workflow 2024-01-05 02:22:42 +05:30
nafees nazik
346078dbbe fix: e2e 2024-01-05 02:15:27 +05:30
nafees nazik
c8337d7dcc fix: key 2024-01-05 02:13:42 +05:30
nafees nazik
75630ef19d fix: npm action 2024-01-05 01:58:00 +05:30
nafees nazik
634807328e fix: command 2024-01-05 01:38:14 +05:30
nafees nazik
2bbbe1098a fix: action 2024-01-05 01:32:47 +05:30
nafees nazik
d24b9de254 fix: skip install 2024-01-05 01:19:22 +05:30
nafees nazik
c86f79dd7b feat: add workflow call actions 2024-01-05 01:11:28 +05:30
nafees nazik
0c12e34c38 fix: remove call 2024-01-05 01:08:32 +05:30
nafees nazik
26b604dbd0 fix: add workflow call 2024-01-05 00:21:05 +05:30
nafees nazik
308f55f3d4 fix: key 2024-01-05 00:09:41 +05:30
nafees nazik
e5b7bf81fa fix: add action to codeql 2024-01-05 00:06:16 +05:30
nafees nazik
b35f050409 fix: add shell 2024-01-05 00:03:20 +05:30
nafees nazik
ce6f523230 fix: key 2024-01-04 23:56:32 +05:30
nafees nazik
9e57de512a feat: use actions 2024-01-04 23:46:09 +05:30
nafees nazik
9b5d64cc1a feat: add playwright action 2024-01-04 23:44:27 +05:30
nafees nazik
fc372d0aa9 feat: add node install action 2024-01-04 23:41:48 +05:30
nafees nazik
e470020b16 feat: add cache build action 2024-01-04 23:41:24 +05:30
Lucas Smith
c1a6a327af chore: update stale workflows 2024-01-03 12:54:32 +11:00
Anik Dhabal Babu
d02f6774b2 chore: update the stale to prevent automatic closure of issues 2024-01-01 17:41:29 +00:00
Adithya Krishna
f9139a54a5 chore: prevent frequent commenting for semantic pr titles
Signed-off-by: Adithya Krishna <adi@documenso.com>
2023-12-11 23:37:28 +05:30
Adithya Krishna
2d931b2c9b chore: fix caching issue in workflows
Signed-off-by: Adithya Krishna <adi@documenso.com>
2023-12-11 23:36:54 +05:30
Mythie
09dcc2cac0 chore: update github actions 2023-12-08 20:44:28 +11:00
Lucas Smith
5e9bc56329 feat: github repo management improvement (#728) 2023-12-08 15:47:55 +11:00
Mythie
7feba02e08 chore: update ci and formatting 2023-12-08 13:01:36 +11:00
Mythie
4e799e68ef chore: update ci 2023-12-08 09:44:36 +11:00