OCaml - An OCaml editor, top level, and learning place for iOS, iPadOS and macOS

Overview
Comments
  • Highlight code on Android

    Highlight code on Android

    Currently, the library used on Android does not support OCaml highlighting. The goal is to implement it. See also: https://github.com/markusressel/KodeHighlighter/issues/18

    enhancement help wanted android 
    opened by NathanFallet 3
  • Add a button to run or copy in editor code from learn section

    Add a button to run or copy in editor code from learn section

    Is your feature request related to a problem? Please describe. See the result or play with the pieces of code in learn section is cool to see how the code work.

    Describe the solution you'd like A small button or some force touch action to copy/run code

    documentation enhancement 
    opened by jbdoderlein 3
  • Build the Android app

    Build the Android app

    Checklist:

    • [x] Open files in the editor
    • [x] Save files
    • [ ] Highlight code (see https://github.com/markusressel/KodeHighlighter/issues/18)
    • [x] Execute code and show output in a console
    • [x] Make this console interactive (input field)
    • [x] Settings
    • [x] Add analytics using DigiAnalytics (need to create a gradle package for that)

    Partially done in #23

    enhancement android 
    opened by NathanFallet 2
  • Android version of the app

    Android version of the app

    Building the Android version of the app

    Checklist:

    • [x] Open files in the editor
    • [x] Save files
    • [ ] Highlight code (see https://github.com/markusressel/KodeHighlighter/issues/18)
    • [x] Execute code and show output in a console
    • [ ] Make this console interactive (input field)
    • [ ] Settings
    • [ ] Add analytics (need to create a gradle package for that)
    enhancement android 
    opened by NathanFallet 1
  • Re-implement the file management system using UIDocument

    Re-implement the file management system using UIDocument

    Is your feature request related to a problem? Please describe. Current file management system is missing a lot of things.

    Describe the solution you'd like Implementing UIDocument classes should make a better file management.

    Additional context See this tutorial https://www.raywenderlich.com/1809473-uidocument-from-scratch Related to #8

    enhancement 
    opened by NathanFallet 1
  • Add files to recent when opened from the app (and not from Finder)

    Add files to recent when opened from the app (and not from Finder)

    Describe the bug When a document is opened from the app, it is not added to recent documents

    To Reproduce Steps to reproduce the behavior:

    1. Open the app, and open a document from it

    Expected behavior The file should be added to recent documents list

    Additional context See https://developer.apple.com/documentation/appkit/nsdocumentcontroller/1514967-notenewrecentdocumenturl

    bug 
    opened by NathanFallet 1
  • Open multiple files at once

    Open multiple files at once

    Is your feature request related to a problem? Please describe. Only one file can be edited at once

    Describe the solution you'd like Add tabs or something to allow to open multiple files at once

    Describe alternatives you've considered

    Additional context

    enhancement 
    opened by NathanFallet 1
  • Add a button to reload/clear the console

    Add a button to reload/clear the console

    Is your feature request related to a problem? Please describe. The button to clear the console is missing (was forgotten when UI was redesigned with SwiftUI)

    Describe the solution you'd like Add it back

    Describe alternatives you've considered Close and reopen the app

    Additional context Check that it renders well on all screen size, because on iPhone for example there are already 3 buttons and adding one more will be a UI/UX problem.

    enhancement 
    opened by NathanFallet 0
  • Dedicated open source section in settings tab

    Dedicated open source section in settings tab

    Is your feature request related to a problem? Please describe. No

    Describe the solution you'd like Make a dedicated section for open source, with link to this repo (this is already ok) but also to other resources used by this app.

    Describe alternatives you've considered

    Additional context

    enhancement 
    opened by NathanFallet 0
  • Auto capitalization of IOS keyboards on top level

    Auto capitalization of IOS keyboards on top level

    When entering text into the top level, the iOS Keyboard has autocapitalization enabled. Thus one must manually uncapitalize before writing let bindings.

    bug 
    opened by Matt-Bulk 0
  • IOS keyboards enter latin1 quotation marks rather than the (0x22) quotation marks

    IOS keyboards enter latin1 quotation marks rather than the (0x22) quotation marks

    When entering text into the top level, IOS keyboards enters in chars like "left quotation" and "right quotation" when pressing the " key.

    bug 
    opened by Matt-Bulk 0
  • Last fixes to Android code editor

    Last fixes to Android code editor

    • Line numbers are not showing. Declared here: https://github.com/markusressel/KodeEditor/issues/44
    • Add editor settings (to change colors, like on iOS)
    bug enhancement android 
    opened by NathanFallet 0
  • Top-level enhancement

    Top-level enhancement

    MacOS app

    Is your feature request related to a problem? Please describe. When I try the code I just ran in the top level, I'm always frustrated with always having to completely rewrite commands.

    Describe the solution you'd like Most shells/consoles - e.g. MacOS' Terminal - have a feature that allows you to fill the input with the last command that has been run just by pressing the upper arrow. It is a very practical functionality, especially when you're trying functions you're writing with different inputs.

    Another feature I'd love to see that may not be worth a new Issue but still concerns top-level, is an automatic scrolling of this section. When you execute a command, you always have to scroll down manually to see the output. It may seem minor but it would be nice if the top-level scroll downed automatically !

    enhancement 
    opened by Jules02 2
  • Keyboard does not reappear

    Keyboard does not reappear

    When you edit a new file and then execute it and after execution if you want to return to the file, the keyboard does not reappear, forcing you to close the file manually and then reopen it.

    Device: iPhone XS MAX, IOS 14.2

    https://user-images.githubusercontent.com/45636497/149910937-cec40a65-5615-4398-9244-0dbc9ce52d34.MP4

    bug ios 
    opened by MangoHiller 2
  • Performance enhancement

    Performance enhancement

    When editing big files or having a lot of logs in the console, the editor starts to be slow. User interface needs to be optimised.

    Possible solutions:

    • ~Use new AttributedString capability to render console~ (edit: it's even worse)
    • ~Remove Kingfisher and use new Image API~ (edit: useless)
    • Use Runestone for code editor (when available, to replace Sourceful which is slow)
    enhancement ios 
    opened by NathanFallet 4
  • Discover the editor section on website

    Discover the editor section on website

    Create, either on the home page (/docs/index.md) or on a dedicated page (eg: /docs/discover.md), a page to show all available features of the editor.

    image

    documentation good first issue 
    opened by NathanFallet 0
  • Run local installation of OCaml on macOS if installed

    Run local installation of OCaml on macOS if installed

    Is your feature request related to a problem? Please describe. When the app is running on a mac where OCaml is installed, the installed version of OCaml can be used instead of the javascript environment.

    Describe the solution you'd like When the console starts loading, check if OCaml is installed on the system, and if so, open a toplevel from it.

    Additional context Can use Process class on macOS: https://www.hackingwithswift.com/example-code/system/how-to-run-an-external-program-using-process Check if ocaml is installed:

    if which ocaml >/dev/null; then 
      echo "ocaml installed"
    else
      echo "ocaml not installed"
    fi
    
    enhancement 
    opened by NathanFallet 1
Releases(v1.2.6)
  • v1.2.6(Mar 1, 2022)

  • v1.2.4(Dec 1, 2021)

  • v1.2.1(May 15, 2021)

  • v1.2(May 5, 2021)

  • v1.1.1(Apr 10, 2021)

  • v1.1(Mar 28, 2021)

  • v1.0(Mar 2, 2021)

    OCaml is not an easy language to get started with… But we are here to help you! With this app, learn step by step, and practice with an integrated playground.

    LEARN

    • Learn OCaml step by step with chapters about variables, conditions, loops, …
    • New chapters are added frequently
    • It’s quick and easy!

    CODE

    • Practice OCaml directly from the app with the integrated playground
    • No need to install additional tools, OCaml is shipped with the app
    • Customize the editor settings to make it yours

    Don’t wait, start learning and playing with OCaml for free now!

    Application developed by Nathan Fallet © 2021 Groupe MINASTE

    Source code(tar.gz)
    Source code(zip)
Owner
Groupe MINASTE
French non-profit organization founded by @PlugNPush, @NathanFallet and @JohnPoliakov. We create apps and services to serve the planet. Made in France
Groupe MINASTE
Buglife-iOS - Awesome bug reporting for iOS apps

Buglife is an awesome bug reporting SDK & web platform for iOS apps. Here's how it works: User takes a screenshot, or stops screen recording User anno

Buglife 498 Dec 17, 2022
BaseConverter-iOS - The fast and easy way to convert numbers with tons of possibilities!

BaseConverter-iOS The fast and easy way to convert numbers with tons of possibilities! With BaseConverter, convert your numbers from and to: Decimal B

Groupe MINASTE 3 Feb 8, 2022
Dash-iOS - Dash gives your iPad and iPhone instant offline access to 200+ API documentation sets

Discontinued Dash for iOS was discontinued. Please check out Dash for macOS instead. Dash for iOS Dash gives your iPad and iPhone instant offline acce

Bogdan Popescu 7.1k Dec 29, 2022
AppLove - View iOS app reviews in multiple selected territories with translation option.

App Love Note: Swift Version 2.2 currently, will update to Swift 3/XCode 8 after cocoapods are updated to Swift 3. Features View iOS Customer App Revi

Woodie Dovich 52 Nov 19, 2022
Awesome-ML - Discover, download, compile & launch different image processing & style transfer CoreML models on iOS.

⚠️ ⚠️ ⚠️ IMPORTANT: I'm no longer maintaining Awesome-ML. Awesome ML is an iOS app that is made to demonstrate different image processing CoreML model

eugene 171 Nov 8, 2022
DevSwitch - An iOS app for switching between countries on the App Store with ease.

Archived as of 24/04/2021. Apple has again broken the URLs required for storefront switching. I've decided to archive DevSwitch due to this. If Apple

Aaron Pearce 432 Jan 3, 2023
IOS - Unofficial app for Swift Evolution

EVOlution - iOS The goal of this project is for the version 1.0 was: bring to iOS the experience provided by Swift Evolution website. Now we are shift

EVOlution App 235 Dec 19, 2022
CodeBucket is the best way to browse and maintain your Bitbucket repositories on any iPhone, iPod Touch, and iPad device!

CodeBucket Description CodeBucket is the best way to browse and maintain your Bitbucket repositories on any iPhone, iPod Touch, and iPad device! Keep

Dillon Buchanan 196 Dec 22, 2022
Charter - A Swift mailing list client for iPhone and iPad

Due to costs and lack of interest, I’ve had to take down the Charter service. If you’re interested in running your own copy, get in touch and I can se

Matthew Palmer 526 Dec 24, 2022
DevTool - A simple UI and powerful Mac OS application, Such as JSON-Formatting tool, JSON-to-model tool, AppIcon generator, Network-Request tool...

?? ?? ?? A simple UI and powerful Mac OS application. It is a collection of tools commonly used in my development work. Such as JSON-Formatting tool, JSON-to-model tool, AppIcon generator, Network-Request tool...

渠晓友 3 Dec 21, 2022
The world's top-level live sdk...

目录结构说明 本目录包含 iOS 版 移动直播 SDK 的 Demo 源代码,主要演示接口如何调用以及最基本的功能。 ├─ MLVB-API-Example-OC // MLVB API Example,包括直播推流,直播播放,互动直播 | ├─ App

LiteAVSDK 14 Nov 20, 2022
DL4S provides a high-level API for many accelerated operations common in neural networks and deep learning.

DL4S provides a high-level API for many accelerated operations common in neural networks and deep learning. It furthermore has automatic differentiati

DL4S Team 2 Dec 5, 2021
React-native-photo-editor - Photo editor using native modules for iOS and Android

?? Image editor using native modules for iOS and Android. Inherit from 2 available libraries, ZLImageEditor (iOS) and PhotoEditor (Android)

Baron Ha. 244 Jan 5, 2023
A fully fledged syscfg editor. Just the editor. Written in pure swift.

MagicCFG Reloaded The SysCFG Writing Utility - UPDATED, OSV Report Bug Table of Contents About MagicCFG Reloaded Getting Started Roadmap Contact Credi

Jan Fabel 47 Dec 31, 2022
Allows users to pull in new song releases from their favorite artists and provides users with important metrics like their top tracks, top artists, and recently played tracks, queryable by time range.

Spotify Radar Spotify Radar is an iOS application that allows users to pull in new song releases from their favorite artists and provides users with i

Kevin Li 630 Dec 13, 2022
Link - a macos application for keeping important and complicated urls in one place

Link Description Link is a macos application for keeping important and complicat

Johan Solbakken 2 Jul 21, 2022
JustLog brings logging on iOS to the next level. It supports console, file and remote Logstash logging via TCP socket with no effort. Support for logz.io available.

JustLog JustLog takes logging on iOS to the next level. It supports console, file and remote Logstash logging via TCP socket with no effort. Support f

Just Eat 509 Dec 10, 2022
A simple iOS app to simulate a laser level using built-in camera and gyroscope.

Laser Level A simple iOS app to simulate a laser level using built-in camera and gyroscope. Demo https://youtu.be/aB03EtQ5zsU Usage Download Open .xco

Pavel Trusov 2 Oct 30, 2022
Three Level Accordian View for IOS

ThreeLevelAccordian ThreeLevelAccordian is a three level accordian for IOS. It owes its base code to SwiftyAccordionCells. Most of the design is custo

Amrata Baghel 44 Sep 23, 2022
Aplikasi iOS Advanced Level To Do List dengan Firebase Auth, SwiftUI, MVVM Design Pattern, dan Firebase Firestore

Aplikasi Tasker adalah aplikasi iOS To Do List yang dibuat menggunakan Autentikasi Firebase / Firestore dan MVVM Design Pattern.

DK 10 Oct 17, 2022