gitwtfhub

wtf is imvs?

relequestual/imvs — explained in plain English

Analysis updated 2026-07-18 · repo last pushed 2015-04-20

SwiftAudience · researcherComplexity · 2/5DormantLicenseSetup · moderate

TL;DR

iMVS is an iPhone app that renders 3D protein structures you can rotate and explore, built by its creator mainly as a way to learn Swift.

Mindmap

mindmap
  root((repo))
    What it does
      3D protein viewer
      Rotate molecules
      CPK color scheme
    Tech stack
      Swift
      SceneKit
      PDB file format
    Use cases
      Study protein structures
      Load custom PDB files
      Explore chemistry on phone
    Audience
      Chemistry students
      Researchers
      Curious learners

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

Why would anyone build with this?

REASON 1

Rotate and inspect a protein's 3D structure directly on your iPhone.

REASON 2

Load your own protein by providing data in the standard PDB format.

REASON 3

Study chemistry bonding by viewing atoms as colored balls and sticks.

REASON 4

Use as a starting point to build a more advanced molecular visualization app.

What's in the stack?

SwiftSceneKit

How it stacks up

relequestual/imvsaiduckman/claudeusage_latest_may2026arnabau/thermalpulse
Stars00
LanguageSwiftSwiftSwift
Last pushed2015-04-20
MaintenanceDormant
Setup difficultymoderateeasymoderate
Complexity2/52/53/5
Audienceresearchervibe coderdeveloper

Figures from each repo's GitHub metadata at analysis time.

How do you spin it up?

Difficulty · moderate Time to first run · 30min

Requires Xcode and an iOS device or simulator to build and run the SceneKit app.

MIT licensed, you can use and modify the code freely for any purpose.

Wtf does this do

iMVS is an app for your iPhone that lets you view and rotate 3D models of proteins. Instead of looking at flat diagrams or chemical formulas, you can spin a protein around in your hand and see its actual structure, like holding a tiny molecular sculpture. It displays atoms as colored balls (using the standard CPK color scheme chemists use) and can show bonds between atoms as sticks connecting them together. The app works by taking protein data, the precise location and type of each atom, and rendering it as a 3D scene on your phone's screen using Apple's SceneKit graphics engine. When you load a protein, the app has to figure out which atoms are bonded to which other atoms, then draw those connections. It does this fairly efficiently by dividing space into a grid rather than checking every atom against every other atom, which would be slow. The creator built this primarily as a way to learn Apple's Swift programming language, not as a professional tool. It's based on similar molecular visualization software the author wrote back in 1999 using Java. If you're a chemistry student, researcher, or just curious about protein structures, you could use this to explore molecules on the go. Right now you can load a few proteins that come with the app, or add your own by providing protein data in the standard PDB format. The project is open source under an MIT license, meaning you can use and modify the code freely. The roadmap shows plans to improve it significantly, better performance when working with large molecules, the ability to download proteins directly from online databases instead of having them bundled with the app, fancier visualization modes like ribbon diagrams for showing secondary structures, and caching so proteins load faster on repeat visits. For now it's a learning project, but it has the foundation to become a more capable tool if the community contributes.

Yoink these prompts

Prompt 1
Walk me through building and running this Swift SceneKit protein viewer on my iPhone.
Prompt 2
Show me how to add a custom PDB file so I can view my own protein in this app.
Prompt 3
Explain how this repo calculates atom bonds efficiently using a spatial grid instead of checking every pair.
Prompt 4
Help me add a ribbon-diagram visualization mode to this SceneKit-based protein viewer.

Frequently asked questions

wtf is imvs?

iMVS is an iPhone app that renders 3D protein structures you can rotate and explore, built by its creator mainly as a way to learn Swift.

What language is imvs written in?

Mainly Swift. The stack also includes Swift, SceneKit.

Is imvs actively maintained?

Dormant — no commits in 2+ years (last push 2015-04-20).

What license does imvs use?

MIT licensed, you can use and modify the code freely for any purpose.

How hard is imvs to set up?

Setup difficulty is rated moderate, with roughly 30min to a first successful run.

Who is imvs for?

Mainly researcher.

View the repo → Decode another repo

This repo across BitVibe Labs

Don't trust strangers blindly. Verify against the repo.