UberEatsClone - Grub is an UberEats clone.

Overview

Grub - UberEats Clone

Grub is a full-featured UberEats clone app template in Java/Kotlin for Android, iOS, Desktop & Web. It helps to build an elaborate cross-platform food delivery app such as UberEats, Foodpanda, GrubHub etc using the new CodeRad tools.

This app was designed as a proof of concept for the CodeRAD library, which facilitates the development of rich, reusable UI components for Codename One. It contains everything you should need to build a rich and reusable app with the Rapid application development principles.

Features

  • Light/Dark mode
  • Onboarding screens
  • Register & Sign In
  • Location
  • Search
  • Filters
  • Restaurant Categories
  • Cart - Add to Cart
  • Promo Code
  • Payments - Credit Cards Management
  • Favourites
  • Order Tracking
  • Profile
  • Optimized for both iOS and Android
  • Fully customizable codebase
  • Highly-modularized code

Screenshots

Welcome Sign in Onboarding Location
Home Restaurants List Restaurant Page Order
Filter Favorites Add Card Order Placed
Order Processing Order Cancelled Profile

Working with Grub Source Code

Watch this quick video to see how easy it is to run and make changes on the fly to the code.

License

Apache 2.0

Demo


NOTE: The app is not connected to any backend server and all the logic is just for the visual effect. Although the app can be easly connected to any server. MVC is separated correctly to make wiring easier.

Installation

From CLI:

mvn install

Or open in your favorite IDE that supports maven (Idea, VSCode, Eclipse, NetBeans etc.).

Further Reading

Credits

Comments
  • installation issue - compiling the CSS files

    installation issue - compiling the CSS files

    hi there

    running ubuntu 22.04 fresh install with JDK 11.017. installed maven, unzipped source, ran mvn install

    [ERROR] Failed to execute goal com.codenameone:codenameone-maven-plugin:7.0.36:css (cn1-process-classes) on project grub-common: An error occurred while compiling the CSS files. Inputs: /var/www/order/common/src/main/css/theme.css, output: /var/www/order/common/target/classes/theme.res, merge file: /var/www/order/common/target/css/theme.css -> [Help 1]

    opened by mizerek 3
  • Usage ?

    Usage ?

    Hello, im wondering if there is a agent app aswell, so the delivery guy can see and pickup the orders. If not, can you recommend me something please? Thanks in advance

    opened by Dreadox 1
  • P1: All files have wrong copyright notices

    P1: All files have wrong copyright notices

    The code is under Apache license but it seems this header is pasted all over the place:

    /*
     * Copyright (c) 2012, Codename One and/or its affiliates. All rights reserved.
     * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
     * This code is free software; you can redistribute it and/or modify it
     * under the terms of the GNU General Public License version 2 only, as
     * published by the Free Software Foundation.  Codename One designates this
     * particular file as subject to the "Classpath" exception as provided
     * by Oracle in the LICENSE file that accompanied this code.
     *
     * This code is distributed in the hope that it will be useful, but WITHOUT
     * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
     * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
     * version 2 for more details (a copy is included in the LICENSE file that
     * accompanied this code).
     *
     * You should have received a copy of the GNU General Public License version
     * 2 along with this work; if not, write to the Free Software Foundation,
     * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
     *
     * Please contact Codename One through http://www.codenameone.com/ if you
     * need additional information or have any questions.
     */
    

    It should be:

    Licensed to Codename One LTD under one
    or more contributor license agreements.  See the NOTICE file
    distributed with this work for additional information
    regarding copyright ownership.  Codename One licenses this file
    to you under the Apache License, Version 2.0 (the
    "License"); you may not use this file except in compliance
    with the License.  You may obtain a copy of the License at
    
      http://www.apache.org/licenses/LICENSE-2.0
    
    Unless required by applicable law or agreed to in writing,
    software distributed under the License is distributed on an
    "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
    KIND, either express or implied.  See the License for the
    specific language governing permissions and limitations
    under the License.   
    

    The root of the project should have a proper LICENSE file too.

    opened by shai-almog 1
  • Install and run simulator

    Install and run simulator

    Env: windows 10

    I run: .\mvnw install Response: BUILD SUCCESS

    But when I run: .\run.bat simulator Reponse:

    ... [INFO] --- maven-jar-plugin:2.4:jar (default-jar) @ grub-javase --- [WARNING] JAR will be empty - no content was marked for inclusion! [INFO] [INFO] --- exec-maven-plugin:3.0.0:exec (run-in-simulator) @ grub-javase --- Unrecognized VM option 'MaxPermSize=128M' Error: Could not create the Java Virtual Machine. Error: A fatal exception has occurred. Program will exit. [ERROR] Command execution failed. org.apache.commons.exec.ExecuteException: Process exited with an error: 1 (Exit value: 1) at org.apache.commons.exec.DefaultExecutor.executeInternal (DefaultExecutor.java:404) at org.apache.commons.exec.DefaultExecutor.execute (DefaultExecutor.java:166) at org.codehaus.mojo.exec.ExecMojo.executeCommandLine (ExecMojo.java:982) at org.codehaus.mojo.exec.ExecMojo.executeCommandLine (ExecMojo.java:929) at org.codehaus.mojo.exec.ExecMojo.execute (ExecMojo.java:457) at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo (DefaultBuildPluginManager.java:137) at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:210) at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:156) at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:148) at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject (LifecycleModuleBuilder.java:117) at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject (LifecycleModuleBuilder.java:81) at org.apache.maven.lifecycle.internal.builder.singlethreaded.SingleThreadedBuilder.build (SingleThreadedBuilder.java:56) at org.apache.maven.lifecycle.internal.LifecycleStarter.execute (LifecycleStarter.java:128) at org.apache.maven.DefaultMaven.doExecute (DefaultMaven.java:305) at org.apache.maven.DefaultMaven.doExecute (DefaultMaven.java:192) at org.apache.maven.DefaultMaven.execute (DefaultMaven.java:105) at org.apache.maven.cli.MavenCli.execute (MavenCli.java:957) at org.apache.maven.cli.MavenCli.doMain (MavenCli.java:289) at org.apache.maven.cli.MavenCli.main (MavenCli.java:193) at jdk.internal.reflect.DirectMethodHandleAccessor.invoke (DirectMethodHandleAccessor.java:104) at java.lang.reflect.Method.invoke (Method.java:577) at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced (Launcher.java:282) at org.codehaus.plexus.classworlds.launcher.Launcher.launch (Launcher.java:225) at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode (Launcher.java:406) at org.codehaus.plexus.classworlds.launcher.Launcher.main (Launcher.java:347) at jdk.internal.reflect.DirectMethodHandleAccessor.invoke (DirectMethodHandleAccessor.java:104) at java.lang.reflect.Method.invoke (Method.java:577) at org.apache.maven.wrapper.BootstrapMainStarter.start (BootstrapMainStarter.java:39) at org.apache.maven.wrapper.WrapperExecutor.execute (WrapperExecutor.java:122) at org.apache.maven.wrapper.MavenWrapperMain.main (MavenWrapperMain.java:61) [INFO] ------------------------------------------------------------------------ [INFO] Reactor Summary for grub 1.0-SNAPSHOT: [INFO] [INFO] grub ............................................... SUCCESS [ 0.006 s] [INFO] grub-cn1libs ....................................... SUCCESS [ 0.004 s] [INFO] CodeRAD ............................................ SUCCESS [ 0.196 s] [INFO] grub-common ........................................ SUCCESS [ 2.467 s] [INFO] grub-javase ........................................ FAILURE [ 1.660 s] [INFO] ------------------------------------------------------------------------ [INFO] BUILD FAILURE [INFO] ------------------------------------------------------------------------ [INFO] Total time: 4.489 s [INFO] Finished at: 2022-06-01T23:35:11-03:00 [INFO] ------------------------------------------------------------------------ [ERROR] Failed to execute goal org.codehaus.mojo:exec-maven-plugin:3.0.0:exec (run-in-simulator) on project grub-javase: Command execution failed.: Process exited with an error: 1 (Exit value: 1) -> [Help 1] org.apache.maven.lifecycle.LifecycleExecutionException: Failed to execute goal org.codehaus.mojo:exec-maven-plugin:3.0.0:exec (run-in-simulator) on project grub-javase: Command execution failed. at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:215) at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:156) at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:148) at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject (LifecycleModuleBuilder.java:117) at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject (LifecycleModuleBuilder.java:81) at org.apache.maven.lifecycle.internal.builder.singlethreaded.SingleThreadedBuilder.build (SingleThreadedBuilder.java:56) at org.apache.maven.lifecycle.internal.LifecycleStarter.execute (LifecycleStarter.java:128) at org.apache.maven.DefaultMaven.doExecute (DefaultMaven.java:305) at org.apache.maven.DefaultMaven.doExecute (DefaultMaven.java:192) at org.apache.maven.DefaultMaven.execute (DefaultMaven.java:105) at org.apache.maven.cli.MavenCli.execute (MavenCli.java:957) at org.apache.maven.cli.MavenCli.doMain (MavenCli.java:289) at org.apache.maven.cli.MavenCli.main (MavenCli.java:193) at jdk.internal.reflect.DirectMethodHandleAccessor.invoke (DirectMethodHandleAccessor.java:104) at java.lang.reflect.Method.invoke (Method.java:577) at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced (Launcher.java:282) at org.codehaus.plexus.classworlds.launcher.Launcher.launch (Launcher.java:225) at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode (Launcher.java:406) at org.codehaus.plexus.classworlds.launcher.Launcher.main (Launcher.java:347) at jdk.internal.reflect.DirectMethodHandleAccessor.invoke (DirectMethodHandleAccessor.java:104) at java.lang.reflect.Method.invoke (Method.java:577) at org.apache.maven.wrapper.BootstrapMainStarter.start (BootstrapMainStarter.java:39) at org.apache.maven.wrapper.WrapperExecutor.execute (WrapperExecutor.java:122) at org.apache.maven.wrapper.MavenWrapperMain.main (MavenWrapperMain.java:61) Caused by: org.apache.maven.plugin.MojoExecutionException: Command execution failed. at org.codehaus.mojo.exec.ExecMojo.execute (ExecMojo.java:478) at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo (DefaultBuildPluginManager.java:137) at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:210) at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:156) at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:148) at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject (LifecycleModuleBuilder.java:117) at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject (LifecycleModuleBuilder.java:81) at org.apache.maven.lifecycle.internal.builder.singlethreaded.SingleThreadedBuilder.build (SingleThreadedBuilder.java:56) at org.apache.maven.lifecycle.internal.LifecycleStarter.execute (LifecycleStarter.java:128) at org.apache.maven.DefaultMaven.doExecute (DefaultMaven.java:305) at org.apache.maven.DefaultMaven.doExecute (DefaultMaven.java:192) at org.apache.maven.DefaultMaven.execute (DefaultMaven.java:105) at org.apache.maven.cli.MavenCli.execute (MavenCli.java:957) at org.apache.maven.cli.MavenCli.doMain (MavenCli.java:289) at org.apache.maven.cli.MavenCli.main (MavenCli.java:193) at jdk.internal.reflect.DirectMethodHandleAccessor.invoke (DirectMethodHandleAccessor.java:104) at java.lang.reflect.Method.invoke (Method.java:577) at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced (Launcher.java:282) at org.codehaus.plexus.classworlds.launcher.Launcher.launch (Launcher.java:225) at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode (Launcher.java:406) at org.codehaus.plexus.classworlds.launcher.Launcher.main (Launcher.java:347) at jdk.internal.reflect.DirectMethodHandleAccessor.invoke (DirectMethodHandleAccessor.java:104) at java.lang.reflect.Method.invoke (Method.java:577) at org.apache.maven.wrapper.BootstrapMainStarter.start (BootstrapMainStarter.java:39) at org.apache.maven.wrapper.WrapperExecutor.execute (WrapperExecutor.java:122) at org.apache.maven.wrapper.MavenWrapperMain.main (MavenWrapperMain.java:61) Caused by: org.apache.commons.exec.ExecuteException: Process exited with an error: 1 (Exit value: 1) at org.apache.commons.exec.DefaultExecutor.executeInternal (DefaultExecutor.java:404) at org.apache.commons.exec.DefaultExecutor.execute (DefaultExecutor.java:166) at org.codehaus.mojo.exec.ExecMojo.executeCommandLine (ExecMojo.java:982) at org.codehaus.mojo.exec.ExecMojo.executeCommandLine (ExecMojo.java:929) at org.codehaus.mojo.exec.ExecMojo.execute (ExecMojo.java:457) at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo (DefaultBuildPluginManager.java:137) at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:210) at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:156) at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:148) at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject (LifecycleModuleBuilder.java:117) at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject (LifecycleModuleBuilder.java:81) at org.apache.maven.lifecycle.internal.builder.singlethreaded.SingleThreadedBuilder.build (SingleThreadedBuilder.java:56) at org.apache.maven.lifecycle.internal.LifecycleStarter.execute (LifecycleStarter.java:128) at org.apache.maven.DefaultMaven.doExecute (DefaultMaven.java:305) at org.apache.maven.DefaultMaven.doExecute (DefaultMaven.java:192) at org.apache.maven.DefaultMaven.execute (DefaultMaven.java:105) at org.apache.maven.cli.MavenCli.execute (MavenCli.java:957) at org.apache.maven.cli.MavenCli.doMain (MavenCli.java:289) at org.apache.maven.cli.MavenCli.main (MavenCli.java:193) at jdk.internal.reflect.DirectMethodHandleAccessor.invoke (DirectMethodHandleAccessor.java:104) at java.lang.reflect.Method.invoke (Method.java:577) at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced (Launcher.java:282) at org.codehaus.plexus.classworlds.launcher.Launcher.launch (Launcher.java:225) at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode (Launcher.java:406) at org.codehaus.plexus.classworlds.launcher.Launcher.main (Launcher.java:347) at jdk.internal.reflect.DirectMethodHandleAccessor.invoke (DirectMethodHandleAccessor.java:104) at java.lang.reflect.Method.invoke (Method.java:577) at org.apache.maven.wrapper.BootstrapMainStarter.start (BootstrapMainStarter.java:39) at org.apache.maven.wrapper.WrapperExecutor.execute (WrapperExecutor.java:122) at org.apache.maven.wrapper.MavenWrapperMain.main (MavenWrapperMain.java:61) [ERROR] [ERROR] Re-run Maven using the -X switch to enable full debug logging. [ERROR] [ERROR] For more information about the errors and possible solutions, please read the following articles: [ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/MojoExecutionException [ERROR] [ERROR] After correcting the problems, you can resume the build with the command [ERROR] mvn -rf :grub-javase

    Anyone can help me?

    opened by l4p4 1
  • Exception: java.io.IOException - /theme.res not found

    Exception: java.io.IOException - /theme.res not found

    SourceChangeWatcher running. Watching directories [D:\UberEatsClone-master\common\src\main\java] [EDT] 0:0:0,17 - Codename One revisions: 7dd4e7d08b3442d90959477ee52a5ae8c4361b29

    [EDT] 0:0:0,17 - Exception: java.io.IOException - /theme.res not found java.io.IOException: /theme.res not found at com.codename1.ui.util.Resources.open(Resources.java:756) at com.codename1.ui.util.Resources.openLayered(Resources.java:720) at com.codename1.ui.util.Resources.openLayered(Resources.java:684) at com.codename1.demos.grub.Grub.init(Grub.java:243) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:498) at com.codename1.impl.javase.Executor$4$1.run(Executor.java:308) at com.codename1.ui.Display.processSerialCalls(Display.java:1368) at com.codename1.ui.Display.mainEDTLoop(Display.java:1155) at com.codename1.ui.RunnableWrapper.run(RunnableWrapper.java:120) at com.codename1.impl.CodenameOneThread.run(CodenameOneThread.java:176) java.lang.NullPointerException at com.codename1.demos.grub.views.AccountView.(AccountView.java:89) at com.codename1.demos.grub.controllers.AccountController.(AccountController.java:49) at com.codename1.demos.grub.Grub.actionPerformed(Grub.java:90) at com.codename1.demos.grub.Grub.actionPerformed(Grub.java:48) at com.codename1.ui.util.EventDispatcher.fireActionEvent(EventDispatcher.java:349) at com.codename1.rad.controllers.Controller.dispatchEvent(Controller.java:159) at com.codename1.demos.grub.Grub.start(Grub.java:287) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:498) at com.codename1.impl.javase.Executor$4$1.run(Executor.java:314) at com.codename1.ui.Display.processSerialCalls(Display.java:1368) at com.codename1.ui.Display.mainEDTLoop(Display.java:1155) at com.codename1.ui.RunnableWrapper.run(RunnableWrapper.java:120) at com.codename1.impl.CodenameOneThread.run(CodenameOneThread.java:176)

    opened by balakrishna501 4
  • Please introduce me

    Please introduce me

    Hello, All I thought this project is java/kotlin code for android But It seems not android Please let me know where can I find android source code? Thanks

    opened by topdev511 2
  • OrderModel

    OrderModel

    Conceptually there needs to be an OrderModel with the details of the order. This would include which dishes are being ordered, quantities, and add-on choices for the dish.

    This will affect some aspect of the views. For example, the DishAddOnView has a boolean property isSelected that you track internally in the view and update when the button is selected/deselected. This state should be stored inside a model. Depending on how you want to design the model, you might have a "selected" property in the DishAddOn model and just bind on that.

    If you find yourself adding state variables inside a View class (other than just to help with determining if it is in-sync with the model), then it is an indication that the model needs to be adjusted to store that state instead.

    opened by shannah 0
  • Be stingy with

    Be stingy with "revalidate()" calls

    The update() method on a view may be called a lot, including circumstances when the state of the view is already fine. Try to avoid UI mutations or expensive calls like revalidate() unless required.

    E.g. In DishAddOnView.java's update method we have:

    @Override
        public void update() {
            if (isSelected){
                getStyle().setBgTransparency(255);
            }else{
                getStyle().setBgTransparency(0);
            }
            revalidate();
        }
    

    I would guard against both the setBgTransparency() calls and the revalidate, as follows:

    @Override
        public void update() {
            int bgTransparency = getStyle().getBgTransparency();
            if (isSelected && bgTransparency != 255){
                getStyle().setBgTransparency(255);
                revalidateWithAnimationSafety();
            }else if (!isSelected && bgTransparency != 0){
                getStyle().setBgTransparency(0);
                revalidateWithAnimationSafety();
            }
    
        }
    

    Note: Also prefer revalidateWithAnimationSafety() to revalidate() in almost all cases. The only exception is when you are calling revalidate() to update layout and you need to access the updated layout coordinates immediately. The difference is that, if there is an animation in progress, revalidate() may cause it to be janky as it will interrupt the transitions.

    opened by shannah 0
  • Make Entire Dish Preview clickable

    Make Entire Dish Preview clickable

    This might be a bug in CN1's lead component handling, but the DishPreview isn't firing the event when the user clicks on the image. CN1 is having trouble handling the nested lead components (DishPreview's lead component is the nested MultiButton, but MultiButton itself is a container with a lead component).

    To work around this problem, create a dummy Button in the DishPreview and set it as the lead component. Then add the actionListener to both the multibutton and the dummy button.

    E.g.

    Button lead = new Button();
    lead.setVisible(false);
    add(BorderLayout.SOUTH, lead);
    setLeadComponent(lead);
    ....
    
    $(lead, dishPreview).addActionListener(evt -> {
                evt.consume();
                ActionNode action = viewNode.getInheritedAction(DISH_CLICKED);
                if (action != null) {
                    System.out.println("DISH_CLICKED action fired");
                    action.fireEvent(entity, DishPreview.this);
                }
            });
    
    opened by shannah 0
Releases(v1.0)
Owner
null
BlackBox is a virtual engine, it can clone and run virtual application on Android

BlackBox is a virtual engine, it can clone and run virtual application on Android, users don't have to install APK file to run the application on devices. BlackBox control all virtual applications, so you can do anything you want by using BlackBox.

null 1.6k Jan 3, 2023
A 1.18 clone of CodeUtilities 2

recode A 1.18 clone of CodeUtilities 2 (a utility-focused Fabric mod for DiamondFire). Mod Dependencies: Fabric Loader v0.13.3 or newer Fabric API for

null 10 Nov 23, 2022
Clone of Snapchat app made using android studio and java. 👀

Snapchat-Clone Clone of Snapchat app made using android studio and java. Screenshots of the app : License MIT License Copyright (c) 2021 Nisa Efendi

Nisa Efendioğlu 9 Nov 8, 2022
This repository contains a functional example of an order delivery service similar to UberEats, DoorDash, and Instacart.

Order Delivery Microservice Example In an event-driven microservices architecture, the concept of a domain event is central to the behavior of each se

Kenny Bastani 198 Dec 7, 2022
Clone of real world Chatting application Whatsapp built on Android Studio and Firebase

WhatsappChatApp About This Project Clone of real world Chatting application Whatsapp built on Android Studio and Firebase Programming Language Used :

Aditya Bonde 11 May 23, 2022
Facebook Clone created using java based on Graph data Structure

Facebook Clone Facebook Clone created using java based on Graph data Structure Representation of Social Media using Graph Data Structure in Java It is

yogita pandurang chaudhari 1 Jan 16, 2022
Building your own Notepad Clone using Java Programming

Notepad Clone Using Java Getting Started Build your own Notepad using Java Programming Project Specifications A Notepad Clone in which the user inputs

Muhammad Asad 8 Nov 8, 2022
This is a clone of Mircosoft Paint that uses Java and its javax.swing library

PaintClone This is a clone of Mircosoft Paint that uses Java and its javax.swing library You are able to select a RBG colors and creates a pallet of t

Nick Quinones 2 Feb 17, 2022
BlackBox is a virtual engine, it can clone and run virtual application on Android

BlackBox is a virtual engine, it can clone and run virtual application on Android, users don't have to install APK file to run the application on devices. BlackBox control all virtual applications, so you can do anything you want by using BlackBox.

null 1.6k Jan 3, 2023
A 1.18 clone of CodeUtilities 2

recode A 1.18 clone of CodeUtilities 2 (a utility-focused Fabric mod for DiamondFire). Mod Dependencies: Fabric Loader v0.13.3 or newer Fabric API for

null 10 Nov 23, 2022
Clone of Snapchat app made using android studio and java. 👀

Snapchat-Clone Clone of Snapchat app made using android studio and java. Screenshots of the app : License MIT License Copyright (c) 2021 Nisa Efendi

Nisa Efendioğlu 9 Nov 8, 2022