# Issue 2 - January 2024

**URL:** https://community.tuist.dev/t/issue-2-january-2024/322
**Category:** Swift Stories (Newsletter)
**Created:** [January 17, 2025, 7:41am UTC](https://community.tuist.dev/t/issue-2-january-2024/322 "2025-01-17T07:41:25Z")
**Posts on this page:** 17
**Page:** 1

<div class="post-metadata">

### Author: ![pepicrft](https://community.tuist.dev/user_avatar/community.tuist.dev/pepicrft/32/5_2.png) [@pepicrft](https://community.tuist.dev/u/pepicrft)
#### Post date: [January 17, 2025, 7:41am UTC](https://community.tuist.dev/t/issue-2-january-2024/322/1 "2025-01-17T07:41:25Z")

</div>

Share interesting bits from the internet that you’ve recently come across and explain what inspired you about them.

Include any artwork with a reference that you liked and that’s connected with app development or design.

---

<div class="post-metadata">

### Author: ![pepicrft](https://community.tuist.dev/user_avatar/community.tuist.dev/pepicrft/32/5_2.png) [@pepicrft](https://community.tuist.dev/u/pepicrft)
#### Post date: [January 17, 2025, 7:47am UTC](https://community.tuist.dev/t/issue-2-january-2024/322/2 "2025-01-17T07:47:39Z")

</div>

CCL is a new minimalistic configuration language:

> **[The Most Elegant Configuration
Language](https://chshersh.com/blog/2025-01-06-the-most-elegant-configuration-language.html)**
>
> Dmitrii Kovanikov's Personas Web Space

---

<div class="post-metadata">

### Author: ![pepicrft](https://community.tuist.dev/user_avatar/community.tuist.dev/pepicrft/32/5_2.png) [@pepicrft](https://community.tuist.dev/u/pepicrft)
#### Post date: [January 17, 2025, 4:21pm UTC](https://community.tuist.dev/t/issue-2-january-2024/322/3 "2025-01-17T16:21:39Z")

</div>

Bringing another one from @marekfort

The type evolution Elixir is undertaking is fascinating to watch: [Data evolution with set-theoretic types - Dashbit Blog](https://dashbit.co/blog/data-evolution-with-set-theoretic-types)

---

<div class="post-metadata">

### Author: ![pepicrft](https://community.tuist.dev/user_avatar/community.tuist.dev/pepicrft/32/5_2.png) [@pepicrft](https://community.tuist.dev/u/pepicrft)
#### Post date: [January 18, 2025, 7:54am UTC](https://community.tuist.dev/t/issue-2-january-2024/322/4 "2025-01-18T07:54:11Z")

</div>

Copyleft licenses are not restrictive

> **[Copyleft licenses are not “restrictive”](https://drewdevault.com/2024/04/19/2024-04-19-Copyleft-is-not-restrictive.html)**

---

<div class="post-metadata">

### Author: ![pepicrft](https://community.tuist.dev/user_avatar/community.tuist.dev/pepicrft/32/5_2.png) [@pepicrft](https://community.tuist.dev/u/pepicrft)
#### Post date: [January 18, 2025, 8:28am UTC](https://community.tuist.dev/t/issue-2-january-2024/322/5 "2025-01-18T08:28:06Z")

</div>

Railway started building their own infrastructure for hosting web applications and covered the journey in this blog post. It’s astounding the level of details that goes into every aspect of building that, like how cables should be positioned within the rack.

> **[So You Want to Build Your Own Data Center](https://blog.railway.com/p/data-center-build-part-one)**
>
> When it comes to infrastructure engineering, building a data center is probably closer to building a house than to deploying a Terraform stack.

---

<div class="post-metadata">

### Author: ![pepicrft](https://community.tuist.dev/user_avatar/community.tuist.dev/pepicrft/32/5_2.png) [@pepicrft](https://community.tuist.dev/u/pepicrft)
#### Post date: [January 18, 2025, 8:43am UTC](https://community.tuist.dev/t/issue-2-january-2024/322/6 "2025-01-18T08:43:01Z")

</div>

Expo is stepping into Vercel’s domain by allowing the deployment of Expo web apps to their platform. I’d have expected the opposite to happen, but Vercel seems to be very strongly focused on the web.

> **[React Native Hosting with EAS: Deploy your server-driven Expo apps to the cloud](https://expo.dev/blog/expo-announces-eas-hosting-service)**
>
> Introducing EAS Hosting: the first ever end-to-end deployment solution for universal app development.

---

<div class="post-metadata">

### Author: ![marekfort](https://community.tuist.dev/user_avatar/community.tuist.dev/marekfort/32/8_2.png) [@marekfort](https://community.tuist.dev/u/marekfort)
#### Post date: [January 18, 2025, 9:28pm UTC](https://community.tuist.dev/t/issue-2-january-2024/322/7 "2025-01-18T21:28:40Z")

</div>

While SwiftPM build plugins have been underutilized (at least that’s my impression), I found [this](https://github.com/Nikoloutsos/explicitDependencyImportCheck) one quite cool – it basically does what our command `tuist inspect implicit-imports` does, but it can warn you sooner as it’s integrated in the build process.

---

<div class="post-metadata">

### Author: ![pepicrft](https://community.tuist.dev/user_avatar/community.tuist.dev/pepicrft/32/5_2.png) [@pepicrft](https://community.tuist.dev/u/pepicrft)
#### Post date: [January 19, 2025, 7:50am UTC](https://community.tuist.dev/t/issue-2-january-2024/322/8 "2025-01-19T07:50:15Z")

</div>

> [@marekfort](#):
>
> While SwiftPM build plugins have been underutilized (at least that’s my impression), I found [this](https://github.com/Nikoloutsos/explicitDependencyImportCheck) one quite cool – it basically does what our command `tuist inspect implicit-imports` does, but it can warn you sooner as it’s integrated in the build process.

This is another example of a feature that we should provide to raw Xcode projects.

BTW, it builds on this other tool to detect the imports: [GitHub - twostraws/Sitrep: A source code analyzer for Swift projects. · GitHub](https://github.com/twostraws/Sitrep)

---

<div class="post-metadata">

### Author: ![pepicrft](https://community.tuist.dev/user_avatar/community.tuist.dev/pepicrft/32/5_2.png) [@pepicrft](https://community.tuist.dev/u/pepicrft)
#### Post date: [January 19, 2025, 7:52am UTC](https://community.tuist.dev/t/issue-2-january-2024/322/9 "2025-01-19T07:52:37Z")

</div>

Anthony Fu, a well-known developer in the JS ecosystem, is embracing what he calls “Epoch Semantic Versioning”, to model more frequent breaking changes, as opposed to doing many minor changes and then one major version that’s a pain to migrate to.  
Having gone through a painful 3-to-4 migration, and considering we often ship “soft” breaking changes, I wonder if we should adopt this at Tuist:

> **[Epoch Semantic Versioning](https://antfu.me/posts/epoch-semver)**
>
> Proposal for an extended Semantic Versioning called Epoch SemVer to provide more granular versioning information to users.

---

<div class="post-metadata">

### Author: ![marekfort](https://community.tuist.dev/user_avatar/community.tuist.dev/marekfort/32/8_2.png) [@marekfort](https://community.tuist.dev/u/marekfort)
#### Post date: [January 20, 2025, 8:33am UTC](https://community.tuist.dev/t/issue-2-january-2024/322/10 "2025-01-20T08:33:52Z")

</div>

> [@pepicrft](#):
>
> Having gone through a painful 3-to-4 migration, and considering we often ship “soft” breaking changes, I wonder if we should adopt this at Tuist

It’s definitely interesting! But at this point, I’m hesitant to move to a different versioning scheme that’s unknown in the community. We have done some “soft” breaking changes, primarily in the CLI API, _but_ we have not done a breaking change of the `ProjectDescription` module – and we have been committed not to break `tuist generate` between minor versions (at least knowingly). So, I feel relatively good at upholding the SemVer semantics – in a large project like Tuist, some minor breaking changes in other parts of the project are somewhat unavoidable (unless one would do breaking changes often).

---

<div class="post-metadata">

### Author: ![hisaac](https://community.tuist.dev/user_avatar/community.tuist.dev/hisaac/32/30_2.png) [@hisaac](https://community.tuist.dev/u/hisaac)
#### Post date: [January 20, 2025, 2:18pm UTC](https://community.tuist.dev/t/issue-2-january-2024/322/11 "2025-01-20T14:18:03Z")

</div>

Not directly Swift-related, so maybe not what you’re looking for, but this recent interview/podcast from Developer Voices was fascinating to me:

[https://pod.link/developer-voices/episode/c0465b3367439ed7535ad6269ac9ad17](https://pod.link/developer-voices/episode/c0465b3367439ed7535ad6269ac9ad17)

[![](https://tuist-community-storage.fly.storage.tigris.dev/original/1X/21a82ccb6b2d36893d14d99c9ef80a32cd4e8b66.jpeg "Using Elixir to Test TVs At Scale (with Dave Lucia)") ](https://www.youtube.com/watch?v=_MwXbHADT-A)

It’s a discussion with Dave Lucia who built out testing infrastructure as a service for television applications. The lengths they had to go to to make it work with all the various television models was wild, and the way they built the software to automate it was equally compelling.

---

<div class="post-metadata">

### Author: ![pepicrft](https://community.tuist.dev/user_avatar/community.tuist.dev/pepicrft/32/5_2.png) [@pepicrft](https://community.tuist.dev/u/pepicrft)
#### Post date: [January 20, 2025, 3:51pm UTC](https://community.tuist.dev/t/issue-2-january-2024/322/12 "2025-01-20T15:51:44Z")

</div>

💜 Thanks for sharing that one @hisaac. I’ll give it a listen. Also very cool to see Elixir in it.

---

<div class="post-metadata">

### Author: ![hisaac](https://community.tuist.dev/user_avatar/community.tuist.dev/hisaac/32/30_2.png) [@hisaac](https://community.tuist.dev/u/hisaac)
#### Post date: [January 20, 2025, 4:58pm UTC](https://community.tuist.dev/t/issue-2-january-2024/322/13 "2025-01-20T16:58:44Z")

</div>

haha I thought the Elixir bit might catch your eye!

---

<div class="post-metadata">

### Author: ![pepicrft](https://community.tuist.dev/user_avatar/community.tuist.dev/pepicrft/32/5_2.png) [@pepicrft](https://community.tuist.dev/u/pepicrft)
#### Post date: [January 21, 2025, 7:06am UTC](https://community.tuist.dev/t/issue-2-january-2024/322/14 "2025-01-21T07:06:21Z")

</div>

SRCL, a React library to build terminal and web applications with terminal aesthetics:

> **[srcl](https://www.sacred.computer/)**
>
> SRCL is an open-source React component and style repository that helps you build web applications, desktop applications, and static websites with terminal aesthetics.

---

<div class="post-metadata">

### Author: ![marekfort](https://community.tuist.dev/user_avatar/community.tuist.dev/marekfort/32/8_2.png) [@marekfort](https://community.tuist.dev/u/marekfort)
#### Post date: [January 21, 2025, 4:14pm UTC](https://community.tuist.dev/t/issue-2-january-2024/322/15 "2025-01-21T16:14:16Z")

</div>

@cschmatzler used the [Zag](https://zagjs.com/) library for the dropdown component in our new web design system – it’s a state machine-driven implementation of interactive components. I reckon something like this could be made into a Swift library in cases where the built-in SwiftUI components don’t cut it.

---

<div class="post-metadata">

### Author: ![pepicrft](https://community.tuist.dev/user_avatar/community.tuist.dev/pepicrft/32/5_2.png) [@pepicrft](https://community.tuist.dev/u/pepicrft)
#### Post date: [January 22, 2025, 6:01am UTC](https://community.tuist.dev/t/issue-2-january-2024/322/16 "2025-01-22T06:01:18Z")

</div>

Things that people get wrong about Electron:

> **[Things people get wrong about Electron](https://felixrieseberg.com/things-people-get-wrong-about-electron/)**
>
> From $25,000 Bloomberg Terminals to SpaceX spaceship controls, web tech is powering systems you'd never expect. Many desktop apps are built with Electron. Why build with web tech — and why bundle parts of Chromium to do so?

---

<div class="post-metadata">

### Author: ![marekfort](https://community.tuist.dev/user_avatar/community.tuist.dev/marekfort/32/8_2.png) [@marekfort](https://community.tuist.dev/u/marekfort)
#### Post date: [January 22, 2025, 1:15pm UTC](https://community.tuist.dev/t/issue-2-january-2024/322/17 "2025-01-22T13:15:55Z")

</div>

This mockup animation generator looks terrific: [https://rotato.app/](https://rotato.app/)

It was used to do [this mockup](https://elk.zone/mastodon.online/@marcel@mastodon.social/113865897100941203) that I saw on Mastodon and I found it stunning.

The latter link could also be used for the artwork – the app from Marcel is beautiful.
