This commit adds a "Get Started" guide for the mobile and desktop
version of FeedDeck. The guide describes the basic concepts and settings
of the app to make it easier to get started with the FeedDeck.
This is also used for the review process in the different app stores to
make it easier to get the app approved.
This commit adds two issue templates and a pull request template. A user
can now select between reporting a bug or requesting a new feature when
opening an issue. The pull request template provides some guidance on
naming the pull request and on the required description.
During the review of the submission of the iOS and macOS versions of
FeedDeck we encountered some problems, so that the app was rejected. For
that we had to make the following changes:
- Change the foreground and background color of the "Sign in with Apple"
button. This means we are now using black as foreground and white as
background color.
- Add the "Sign in with Apple" capability to the macOS version, to
handle the sign in within the app as it is done for the iOS version.
- Add description in the "CreateDeck" widget, because it was confusing
for the review and they were thinking that they had to provide their
name.
- Adjust "Release" section in contributing guide.
- Disable "X" datasource, since it is not working after the latest API
adjustments.
- Update "version" key and "msix_config.msix_version" key in
"pubspec.yaml" file.
- Change user in "AddSourceReddit" widget help text.
- Enable macOS App Sandbox.
- Adjust logo for Windows version.
This commit adds a continuous delivery pipeline for the landing page,
which is published as GitHub page.
This commit also fixes some typings and links within the landing page.
This commit fixes the continuous delivery GitHub Action to only run once
on a new release for all workflows and to add the required permissions
to upload artifacts to the GitHub release.
This commit adds the continuous delivery pipeline for Supabase, to
automatically push all database migrations and to deploy all Supabase
functions.
When a PR is merged to the "main" branch the pipeline is run for the
STAGE project. If a new tag is created the pipeline is run for the PROD
project.
The settings page now contains an info section, which is used to show
the current app version via the "package_info_plus" package, the link to
our website, the link to our GitHub repository and the link to our X
account.
Add continuous delivery workflows for the desktop apps. While we want to
provide the desktop versions of FeedDeck though the different app stores
we still want to build them via GitHub Actions, so users can also test
the desktop apps before an official release.
This is also useful to build the binaries we can then download and
upload to the official stores, since we currently only have a macOS
system to build the apps.
Improve the media handling within the app. We do not save the media
files for items to the Supabase storage anymore. The source icons are
now only saved in the Supabase storage, the usage of an url as source
icon is not possible anymore.
The media files for items are directly retrieved from the corresponding
url or for the web version from the "image-proxy-v1" Supabase function.
If the image is retireved from the Supabase function we cache the image
in the browser via the cache control headers. If the image is directly
retrieved from it's url it's cached by the "CachedNetworkImage" widget.
Add a new GitHub Action to publish the web version of FeedDeck to
Cloudflare Pages. The action will build and publish the web version to
the stage project on every commit to the main branch and to the prod
project when a new tag is created.
Add a continuous delivery and release workflow. The continuous delivery
workflow is used to build the Docker image for FeedDeck and the release
workflow is used to generate the changelog.
Instead of rendering the images for a Nitter item within the description
in the details view, we are now rendering the images via the
"ItemMediaGallery" widget. To not render the images twice, we also added
the "disableImages" paramter to the "ItemDescription" widget, to not
render the images in the widget.
It is now possible to use a Nitter instance, where the RSS endpoints are
protected via basic authentication. For that a new
"FEEDDECK_SOURCE_NITTER_BASIC_AUTH" environment variable was added,
which can be used to set the value for the authentication header.