IceCubesApp è un'applicazione open source per accedere al social network decentralizzato Mastodon! È costruita interamente in SwiftUI, il che la rende veloce, leggera e facile da usare. È possibile connettersi a qualsiasi istanza di Mastodon e sfogliare la propria timeline, interagire con altri utenti e pubblicare aggiornamenti e media. https://mastodon.it/it/Quale-app-mastodon-utilizzare
Go to file
Bosco Ho 1bf4d9e398
Feature: Tab bar scroll to top (#1598)
* - *WIP* Explore tab: Tap on tab to scroll to top.

* - Explore tab: Tap tab to scroll to top.

* - Explore: Tap tab again to focus on search bar.
- Explore: Set `.defaultMinListRowHeight` so scroll to view doesn't occupy more than 1pt height in grouped style list.
- Explore: Add padding to get Explore list view to look the same.

* - Explore: Minor adjust to padding.

* - Messages: Add tap tab to scroll to top.

* - Notifications: Add tap tab to scroll to top.

* - Profile: Add tap tab to scroll to top.

* Add `ScrollToView` that can be used across all views.

* Move scroll-to-top constants to ScrollToView.

* Format

---------

Co-authored-by: Thomas Ricouard <ricouard77@gmail.com>
2023-10-05 08:22:45 +02:00
.github Templated detailed bug filing (#731) 2023-02-09 06:22:41 +01:00
ci_scripts
IceCubesActionExtension Traditional Chinese (zh-Hant) localization (#1170) 2023-03-05 07:25:34 +01:00
IceCubesApp Feature: Tab bar scroll to top (#1598) 2023-10-05 08:22:45 +02:00
IceCubesApp.xcodeproj Bump version to 1.8.5 2023-09-25 14:37:39 +02:00
IceCubesNotifications Automatically remove spaces in server names (#1600) 2023-10-01 09:37:09 +02:00
IceCubesShareExtension UserPreferences -> Observable 2023-09-19 09:18:20 +02:00
Images Improved readability of readme (#628) 2023-02-03 07:18:19 +01:00
Packages Feature: Tab bar scroll to top (#1598) 2023-10-05 08:22:45 +02:00
.gitignore xcconfig Support (#342) 2023-01-24 17:29:20 +01:00
.swiftformat
IceCubesApp-release.xcconfig xcconfig Support (#342) 2023-01-24 17:29:20 +01:00
IceCubesApp.xcconfig.template xcconfig Support (#342) 2023-01-24 17:29:20 +01:00
LICENSE
PRIVACY.MD Switch to new Chat completion API + Add Tags completion 2023-03-09 13:46:04 +01:00
README.md Update README.md 2023-08-31 19:35:48 +02:00
TERMS.MD Add supporter subscription + supporter badge 2023-03-01 20:07:40 +01:00

IceCubesApp

Download on the App Store

IceCubesApp is an open source application for accessing the decentralized social network Mastodon! It's built entirely in SwiftUI, making it fast, lightweight, and easy to use.

You can connect to any Mastodon instance and browse your timeline, interact with other users, and post updates and media.

The project is split into different Swift Packages to make it easier to manage and maintain the codebase. Each package is focused on a specific aspect of the application, such as the UI, network communication, or data models. This modular approach allows for easier collaboration and ensures that the code is organized and easy to understand.

It's a great starting point for learning SwiftUI. The app covers many of the basic concepts of SwiftUI, such as building layouts, working with data, and handling user interaction. By exploring the code, you can gain a solid understanding of how to use SwiftUI in your daily life. Plus, the open source nature of IceCubesApp means that you can see how real-world applications are built and get a sense of best practices for using SwiftUI.

The architecture is straightforward MVVM for most parts, no redux on this one ;)

Thanks!

Icon

Building the project

To build the project, you need to clone the repo and create a copy of the included .xcconfig file to create your config before you can compile the project. Otherwise, you will get an error.

Here are the steps:

  1. Clone the repo
  2. In the same folder that contains the IceCubesApp.xcconfig.template, run this command:
cp IceCubesApp.xcconfig.template IceCubesApp.xcconfig
  1. Fill in the DEVELOPMENT_TEAM and BUNDLE_ID_PREFIX values. The first should have your Apple Team ID (which you can find by logging into the Apple Developer Portal). The latter is your domain in reverse notation or whatever you use as the prefix for your projects.
  2. Save your changes, and then you should be able to compile the project without any issues.