explaingit

allenwong/30daysofswift

11,496SwiftAudience · vibe coderComplexity · 1/5Setup · moderate

TLDR

A portfolio of 30 small Swift iOS projects built by a product designer learning to code in 30 days, each showing a specific UI effect or feature with source code and an animated preview, great for Swift beginners.

Mindmap

mindmap
  root((30daysofswift))
    What it does
      30 mini projects
      iOS UI examples
      Self-study journal
    Tech Stack
      Swift
      iOS
      Xcode
    Featured Projects
      Login animation
      Slide-out menu
      Image mosaic
      Slot machine
    Audience
      Swift beginners
      Vibe coders
Click or tap to explore — scroll the page freely

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

Things people build with this

USE CASE 1

Browse working Swift examples of specific iOS effects like login animations or slide-out menus to copy into your own app

USE CASE 2

Follow along as a beginner and replicate each 30-day mini-project to build iOS skills one small step at a time

USE CASE 3

Use the stopwatch, emoji slot machine, or pull-to-refresh examples as starting templates for your first iOS app features

Tech stack

SwiftiOSXcode

Getting it running

Difficulty · moderate Time to first run · 30min

Requires Xcode, running on a physical device needs an Apple developer account, but the simulator works without one.

In plain English

30 Days of Swift is a personal learning project by Allen Wang, a product designer who set out to teach himself Apple's Swift programming language by building one small app or feature every day for 30 days. The repository contains the finished code for all 30 mini-projects, each in its own folder. The projects are small, focused exercises that each demonstrate a specific iOS feature or interface pattern. Examples include a simple stopwatch, a video background screen, a pull-to-refresh control, a login animation, an emoji slot machine, a slide-out menu, and a mosaic layout for image grids, among others. Each project comes with an animated GIF in the README showing what it looks like when running on a device. This is not a library or tool intended for use in other projects. It is a portfolio of completed exercises from a structured self-study challenge. Wang was inspired by a similar project called 100 Days of Swift by Sam Lu, which he credits in the README. The repository would be most useful to someone who is also learning Swift or iOS development and wants to see short, concrete examples of how specific effects and interface components work. Each project is small enough to read through and understand without much surrounding context.

Copy-paste prompts

Prompt 1
I'm learning Swift iOS development. Walk me through how the 30 Days of Swift login animation project works and help me adapt it to my app's brand colors.
Prompt 2
Show me how the slide-out menu in 30daysofswift is built so I can add a similar side navigation drawer to my iOS app.
Prompt 3
I want to build a mosaic image grid for iOS like the one in 30daysofswift. Explain the layout technique and help me reproduce it in my own project.
Prompt 4
Help me understand the pull-to-refresh example from 30daysofswift and integrate it into my existing UITableViewController.
Open on GitHub → Explain another repo

← allenwong on gitmyhub — every repo by this author, as a profile.

Verify against the repo before relying on details.