There are no reviews yet. Be the first to send feedback to the community and the maintainers!
TweetStation TweetStation was originally a sample program that I created for my own use. I was a fan of the older UI in Echofon and liked many of the elements of Tweetie2, but like every programmer, I wanted to make some changes. It was also a test bed for testing APIs and answering MonoTouch users's questions. It is the original application that lead to the creation of MonoTouch.Dialog, as I figured that there should be a better way of constructing dialog boxes than creating models and delegates left and right. TweetStation is an open source, MIT X11 licensed twitter client written for MonoTouch. See the file LICENSE for details. I setup a web site at: http://tirania.org/tweetstation as the oficial user-centric web site for TweetStation. The official description for the app is on TweetStation.txt Building ======== To build TweetStation, you will need a side-by-side MonoTouch.Dialog release, since they are co-developed, you will likely need the latest version. Design Goals ============ These design goals are just some basic principles, but like any other project, they change depending on my mood each day or when faced with harsh realities. The Murray Hill Style For years researchers from Bell Labs at Murray Hill published various computer books on C, Unix, compilers and design that were incredibly succinct. They were amazing pieces of code that were short and concise. I call this style of code the Murray Hill style. The TweetStation code was not designed to be incredibly extensible or reusable as-is. I wrote this code to be succinct and short, if it is reusable for other projects it is an unintended side effect. If you want to reuse code from TweetStation, you will likely want to alter it to suit your needs. Exceptions The code uses try/catch extensively in the code in areas that have to process data from twitter, I assume that the data might be broken or that my original assumptions or their documentation might be wrong. You will notice in the code that all exceptions are printed out, I want to keep that this way for that reason. MonoTouch.Dialog Most of the UI was created with MonoTouch.Dialog and various custom views and Elements designed for twitter. There is not a single UITableView coded in the traditional style. Memory Usage In some parts of the code I tried to minimize memory usage by not creating thousands of objects that would be thrown out (Tweet parsing for example), so I just recycle some instances sometimes. The ImageStore is also specialized for Twitter use, for instance the keys kept in the cache and on the file system are keyed by a long value and not by the URL, so we are not forced to keep the strings for the Urls in memory. A general purpose image downloader/cache would use URLs or something else. Singletons There are a handful of singleton classes as well, I tend to reset those instead of creating new instances as they would avoid creating expensive objects or objects that are known to leak in CocoaTouch anyways. Pending Task Queue I never know if a tweet has been starred or not when there is no network connectivity. With TweetStation all the pending requests are kept in a queue and flushed at periodic intervals. This is used both to post tweets and favorite posts, allowing the settings to take place right away, even if there is no network connectivity Implementation Notes ==================== In the original TweetStation, I ended up doing a of database operations on the main thread, as opposed to doing it on a background thread. I am moving towards locking the Database.Main to allow the parsing of initial tweets to take place in the background OAuth and xAuth =============== TweetStation supports both OAuth and xAuth authentication from twitter. Currently the source code is hardcoded to the values that I obtained by registering my app at: http://dev.twitter.com/apps It uses OAuth by default and it does this by opening an embedded UIWebView to let the user enter their login and password and granting the user authorization over at Twitter's site. To improve the experience, Twitter offers access to xAuth, but this requires application developers to request from Twitter special access, you can enable this for your code if you negotiate this.
TensorFlowSharp
TensorFlow API for .NET languagesSwiftTerm
Xterm/VT100 Terminal emulator in SwiftSwiftGodot
New Godot bindings for Swiftmono-wasm
TermKit
Terminal Kit - Console UI toolkit for Swift applicationsMonoTouch.Dialog
Tools to simplify creating dialogs with the user using MonoTouchWasmerSharp
.NET Bindings for the Wasmer RuntimeSwiftTermApp
PlaticaBot
MacOS, iOS and watchOS ChatGPT client using your own OpenAI keyXtermSharp
XTerm emulator as a .NET libraryredis-sharp
A C#/.NET binding for the Redis server.SwiftGodotKit
Embed Godot into Swift appsSkiaKit
Swift Bindings to the Skia 2D graphics LibraryTextBufferKit
Swift TextBufferCovidGraphs
Covid Graphs appSwiftChatGPT
Simple ChatGPT APIGodotSwift
Swift bindings for the Godot Game Enginemc
C# based curses file managerFuchsiaSharp
Bindings to FuchsiaOpenFlowSharp
Sample CoverFlow implementation for MonoTouch, based on OpenFlowmuget
Command line front end to NuGet that is not overengineeredmonotouch-libs
Various MonoTouch bindings and librariesTldExtract
.NET Library to extracts the root domain, subdomain name, and top level domain from a host name using the Public Suffix ListRealityActions
RealityActionsSwiftGodotBinary
SwiftGodot - binaries for ease of consumptionmono-wasm-libc
TurboSwift
mono-wasm-mono
FluidInterfaces
Port of Nathan Gitter's Fluid Interfaces codeMaterialSharp
Material design components for iOS applications written in C#NetCatNetwork
NetCat implementation using the new Apple Network framework, C# port of the C sampleCovidExtractor
My Covid ExtractorSwiftGodotDocs
CocoaDriver
Xamarin.Mac-based Cocoa driver for Mono's System.Windows.FormsDarwin.CopyFile
Bindings for Darwin's CopyFile APIMonoTouch.Bindings
Some bindings for third party librariesmigueldeicaza
Repository for my READMEgtk
Fork of Gtk branch 2-24 with all Xamarin patches from github.com/mono/bockbuild appliedlibgodot
Godot modified to be embeddable as a library, for use in SwiftGodotKitGodotSwiftLink
Binding module, temporary, while I move it to Godot.PhotoPanner
C# version of Facebooks Photo PannerMac-SceneKit-Globe-Test
Sample F# Mac app showing SceneKit in action.Mono.VFS
C# based Virtual File System API.SimpleCollage
Simple picture collage with SkiaSharptil
KeyboardButton
Simple keyboard button in SwiftUI eventually for use in the Terminal EmulatorMapWrapper
SwiftUI wrapper around MapKitSwiftApiExtractIssue
Shows a bug with swift-api-extractRosettaMaker
Creates the Rosetta HTML page that shows the C#/Objective-C/C mappingsKitCore.NET
.NET bindings to KitCore - the ultimate core application frameworkNailedIt
My Google Glasses app to "Capture Moments" and "Nailed it"SplashView
C# Port of SplashView https://github.com/callumboddy/CBZSplashViewFileProvider-ios-crashing
monotouch-samples
MonoTouch Sample ProgramsSwiftSH.binaries
Binary for the SwiftSH frameworkSkiaKit.binaries
Precompiled binaries for various platforms of the runtime used by SkiaKit (SkiaSharp)CovidExtractorPM
SwiftPM version of CovidExtractorpaint-mono
Automatically exported from code.google.com/p/paint-monoToyPathTracer
Toy path tracer for my own learning purposesSkiaKitPayloads
Binary payloads directory for the SkiaKit librarySwiftOnnxMnist
Mnist sample using OnnxRuntime in Swiftiptoloc
IP to Location ToolsTreemapWeb
mlist
Gtk# Mlist widget - managed implementation of a list view (2005 era)mono-soc-2007
Automatically exported from code.google.com/p/mono-soc-2007blog-monomac
MonoMac BlogSwiftDocCPlusPlusBug
Sample of how Swift Docc fails if you use the new Swift C++ interopGodotSnippetEditor
A tool to edit Godot documentation code snippetsSwiftTermDocs
Placeholder to publish the API docs for SwiftTermesctest
Mirror from https://gitlab.freedesktop.org/terminal-wg/esctest.gitCoreKitSharp
Bindings to the Ultimate Framework PlatformLove Open Source and this site? Check out how you can help us