All roles

JavaScript + Swift Developer for simple app exploration!

Remote · USA Full-time New today

Ok, so the description is long as we wanted to be clear. But we promise, this is an easy one if you are a Swift developer with some JavaScript experience or viceversa, it should only take one or two days. We want to sketch an application that regularly fetches information from remote services to be used within a Swift application. The system will use JavaScript to interact with the remote... services and send the responses back to Swift for rendering. The primary goal is to figure out how to implement a modular and flexible architecture that can easily accommodate new services. So although this sketch will just be fetching information from one service, the goal is taken from here we can create more JavaScript modules to add more services. The services will represent remote machines information (like computers with IPs, etc…). The JavaScript code should have two functions that can be called from outside: “is_valid” and “fetch”. Both functions in the service will require specific authentication details provided through a ServiceConfiguration object (like tokens, user, etc…), that you will define as you need. For this initial script, we will only implement as service the Tailscale API, and in particular just a single method: https://github.com/tailscale/tailscale/blob/main/api.md#list-tailnet-devices IMPLEMENTATION DETAILS • *JavaScript Side**: • Implement an abstracted service layer with generic "is_valid" and "fetch" functions. • Ensure the service layer can handle different services by providing a mechanism for service-specific implementations. • Develop service-specific implementations for Tailscale, adhering to the common interface provided by the abstracted service layer. • Utilize provided authentication tokens/user details from the ServiceConfiguration object. • Make request to the external service using the standard JavaScript’s `fetch` function preferably. • Model resources based on the data received from the services and return them to the Swift side. • *Swift Side**: • Integrate the abstracted JavaScript service layer into the Swift application using the JavascriptCore framework (JSContext, evaluateJavascript, etc…). • Implement UI elements (e.g., buttons) to trigger the JavaScript functions based on the selected service. • Display the returned objects/resources in rows for validation and proof of functionality. Tailscale: • Resources: Devices connected to the user’s tailnet (network). • ServiceConfiguration for authentication: Tailscale tokens and probably the tailnet name. • Device information: For each device, should return at least “addresses”, “id”, “nodeId”, “name”, “hostname”, “created” and “lastSeen”. DELIVERABLES This is a simple sketch for an application. We do not require testing or a fancy UI. The application should be compatible with both simulators and devices. Additionally, the corresponding JavaScript code, which provides the abstraction layer for service interaction, should be included. The JavaScript code should be structured to handle different services, such as Tailscale, and should provide the "is_valid" and "fetch" functions as per the project requirements. The application should demonstrate the ability to validate service configurations and fetch resources from the selected service, displaying them appropriately in the UI Apply Job!

Related roles

Remote Online Amazon Chat Jobs No Experience – Easy Jobs Hiring...

Remote · USA Full-time

Remote Entry Level Travel Assistance

Remote · USA Full-time

Target Data Entry Jobs No Experience (Customer Support, Phone...

Remote · USA Full-time

Sr Director, Wealth Sales Enablement Strategist

Remote · USA Full-time

Sales Consultant - Remote | WFH

Remote · USA Full-time

TikTok Virtual Assistant Remote Job – Work From Home Job

Remote · USA Full-time

Sr. Manager, Provider Partner, DentaQuest (Pulaski County- Arkansas )

Remote · USA Full-time

Program Outreach Specialist

Remote · USA Full-time

Work from Home Jobs - No Experience Required | Remote Career...

Remote · USA Full-time

Typing no experience

Remote · USA Full-time

Commercial Mortgage Loan Closer - Remote

Remote · USA Full-time

Ramp Agent

Remote · USA Full-time

Experienced Entry-Level Data Entry Clerk – Logistics and Data Management

Remote · USA Full-time

Communications and Public Relations Spring 2025 Intern - Remote

Remote · USA Full-time

Analyst, Collections (Business to Business)

Remote · USA Full-time

Business Process Re-Engineering (BPR) Analyst

Remote · USA Full-time

Remote Market Research Interviewer - Part Time

Remote · USA Full-time

Experienced Data Entry Specialist – Part-Time/Full-Time Student Work Opportunity at blithequark

Remote · USA Full-time

Remote Customer Service & Call Center Representative – Part‑Time, Work‑From‑Home, Inbound Phone, Email & Chat Support with Flexible Scheduling

Remote · USA Full-time

Experienced Product Manager - Commerce Cloud: Driving Innovation and Growth with Salesforce

Remote · USA Full-time