What have you built? Create a developer portfolio with DevPort. Sign Up

Popular Developers

The most visited developers on DevPort.

Ngo Quoc Cuong

Hanoi, Vietnam

Software Engineer at Fujitsu Vietnam, formerly at Samsung Vietnam Mobile R&D Center

Galaxy Smartphone

Devepment and Maintenance of Samsung Galaxy Smartphone S/W Involved as Android Application SW Engineer Developed, resolved issues Using profiling tools to improve performance, stability


Switch sound profiles, turn on/off connection automatically as you wish

Innovation Projects

Samsung has a lot of innovative activities and researches, I involved in some of them. I usually develop Digital Signal Processing module in these projects. I also sometimes involved in developing Server side such as REST Web Service

Asif Ahmed

Dhaka, Bangladesh

Game Developer


Lighty is a light following monster! This robot monster starts moving when a flash light is pointed on the eyes. Tools: Arduino, Motor-Shield, DC Motors, Wheels, Light Sensors, 3D Printer, Laser Cutter "Lighty" is a five-person group project.

Generative Art

The main purpose of this project is to design and develop an application that deals with generative art. The application displays different line styles and geometrical shapes appearing one after another randomly within customisable grids. The work was inspired by an artwork of a generative artist Sol LeWitt, named “Lines and Colors”. Tool: Processing It is a two-person group project.

Don't Take Wrong Turn!

Don't take wrong turn! or you will fall to nowhere. It's an endless fantasy game where new excitements and surprises are waiting for you in every turn! Turn, get coins and score. Be a great turner to get top rank on leaderboard with your friends. Happy Turning! Tool: Unity


Los Angeles

I'm addicted to Swift!!!


Shooter Game


MyFitZ is a virtual Closet.

Memory Game

The game starts of revealing a random image out of four. The image blinks n times then it's hidden. After matching the image that was shown, with one of the four images at the bottom of the screen, the loop repeats this time adding another image to match with the previous shown image. This loop repeats itself until the user matches the wrong image or the user matching the maximum amount of images which is 16.

Santiago Quinteros


Javascript Developer

Freelance Meteor developer

I worked in several meteor projects since august of 2015 and it's my main stack.

Freelance React developer

I been worked with React.js in several projects since november of 2015 and has become my prefered front-end framework.


Austin, TX

Last of the freelance hackers. Greatest swordfighter in the world.


Quill Quill is a simple blog engine inspired by Jekyll. Quill runs on node and has an easy command line interface. Themeing is as simple as editing a single html page. Installing & Deployment You can install Quill using the npm package manager. Just type: npm install quill -gNow, we have access to the quill command. We can start a new blog by typing: quill new my_new_blogThis will create a new folder in the specified path where our blog will live. Lets start by making a post. cd my_new_blog quill post "My First Post"This will create a post file in the posts/ directory which is prefixed by the current timestamp. All post files are written in Markdown and will compile to static HTML. To deploy the site we are going to use Nodejitsu. Instructions on setting up their commandline tool Jitsu can be found here. Once you have jitsu set up it is as simple as typing: jitsu deployLocal development If you want to edit your themes locally, you can run the quill server by typing: npm install node quillNow you can navigate to http://localhost:8000 and see your blog while you edit it. Note: You have to restart the server when you make changes to see them. Config.json We configure Quill with config.json. { "development": true, "theme": "bootstrap", "name": "Quill", "description": "Blogging for Hackers.", "blogroll": [ { "title": "Download Quill", "url": "https://github.com/theycallmeswift/quill", "description": "Get the quill server" }, { "title": "Official Docs", "url": "https://github.com/theycallmeswift/quill", "description": "The official documentation" }, { "title": "Follow us on Twitter", "url": "http://twitter.com/justquillin", "description": "Follow @justquillin on Twitter" } ] }Here it is line by line: Development Flag "development": true, You won't care about this unless you're helping to build Quill (please do!). Theme "theme": "barebones",What directory the theme is stored in. /themes/[config.theme]/index.html. Every variable from config.json is passed to the theme. Look at the next section to see how the blog name and description appear. There are four example themes in this repository, included the theme found at http://justquillin.com. Name and Description The name of the blog and a short blub about it. "name": "Quill", "description": "Blogging for Hackers.",In the barebones theme we render the name and description in an hgroup: <hgroup> {{#if config.name}} <h1 id="blog-title">{{ config.name }}}</h1> {{/if}} {{#if config.description}} <h2 id="blog-description">{{ config.description }}}<h2> {{/if}} </hgroup>Blogroll The blogroll is an array of objects. These links are also rendered in the template. "blogroll": [ { "title": "Download Quill", "url": "https://github.com/theycallmeswift/quill", "description": "Get the quill server" }, { "title": "Official Docs", "url": "https://github.com/theycallmeswift/quill", "description": "The official documentation" }, { "title": "Follow us on Twitter", "url": "http://twitter.com/justquillin", "description": "Follow @justquillin on Twitter" } ]Here's an example of how the barebones theme renders the blogroll: {{ #each config.blogroll }} <li><a href="{{ url }}" title="{{ description }}">{{ title }}</a></li> {{ /each }}Blog Posts Blog posts are transformed from markdown into templates. Blog posts start as markdown files in /posts and then get passed to our template (as specified in the config). These markdown posts are just like the blogroll found in config. Here's an example of how they're styled in the barebones theme: {{#posts}} <li> <h3 class="title">{{{ title }}} <small>{{{ timestamp }}}</small></h3> {{{ body }}} </li> {{/posts}}The {{{ body }}} variable outputs compiled markdown. This markdown is wrapped in a <div/> with a class of _post and a unique id. <div class="_post" id="1332691107">[compiled markdown (html)]</div>Remember that newlines in markdown get p wrappers. Realtime! It wouldn't be node if it wasn't realtime. The crowd-pleaser for the hackny hackathon, we integrated a realtime notification system for new blog posts. This is added as a bonus variable for templates. Include it at the end of your template, right before the </body> tag. {{{ realtime }}}When you publish a new blog post (by deploying the server), all of the connected clients will be notified in realtime. The notification is appended to the body of the document with javascript. This code gets added to the page whenever a new post is made. It will not exist on the page before this. To test, you can copy and paste the following before the </body> tag. <a href="javascript:location.reload(true)" id="new-post-notice">A new post has been made! <br /><small>Click here to see it.</small></a>Assets Throw all your static assets (like images or javascript) into the /assets folder within the template directory. You can reference these files in your template like this: <img src="/assets/favicon.png" />Bonus Structure.css If you want an easy way to render markdown, check out structure.css, bundled into the four provided themes within the /assets directory. Based off the rawr framwork.


PubNub-Rickshaw-Memory Monitor your NodeJS memory usage with PubNub. Plugs right into pubnub-rickshaw for easy realtime charts. Quickstart Install with npm. npm install pubnub-rickshaw-memoryInclude in your app with {dev: true}. var pnrickmem = require('pubnub-rickshaw-memory'); pnrickmem.init({dev: true}); That's it! Now when you run your node app, you should see the following: ---------------------- pubnub-rickshaw-memory ---------------------- Monitor this instance: http://localhost:1337?pnrickmem-bff2c45e-ab44-4204-92e3-bd69048502c0 ----------------------Visit the url to see a realtime graph of your NodeJS memory profile over time. Options Sent as an object during init(). pnrickmem.init({ publish_key: 'demo', channel: uuid(), interval_timeout: 1000 dev_mode: false, port: 3333 }); Parameter Details Type Default publish_key Your PubNub publish key string 'demo' channel Your PubNub channel string uuid.v4(); interval_timeout Delay between memory publishes integer 1000 dev_mode Enable development mode boolean false port Port number for express server spawned when dev mode is enabled integer 3333 How it works NodeJS memory usage is exposed through process.memoryUsage(). Every interval_timeout the module publishes the current output of process.memoryUsage() to the supplied publish_key and channel on the PubNub network. Read more about PubNub here. Dev Mode When dev: true is enabled in options, the module will spawn an express server on localhost using the supplied port. This is a simple static server that already includes the contents of pubnub-rickshaw. Customization You can customize your graph by configuring pubnub-rickshaw to subscribe the the same channel supplied in options.

Hacker League - We Power Hackathons

Hacker League is the premier platform for people who organize and attend hackathons. The Hacker League platform provides event organizers with the online infrastructure they need to organize a hackathon and a comprehensive suite of tools for performing common tasks.

Hi, I am Darush


Software Developer

Bulk SMS

Bulk SMS android application was designed and developed to facilitate the task of HR department of the MiDS Consulting Company for contacting and informing all the successful candidates through SMS in one shot. ####Application workflow: The HR department emails all the successful candidate phone numbers and the default message to the Bulk SMS email address. The user fetches the email content through the Bulk SMS app. Bulk SMS app will analyze the email content and show user the total number of valid and invalid phone numbers as well as the SIM operator of each phone number. The user will then can press on “SEND” to send the default message to all the phone numbers. ####Libraries used: JavaMail API

Easy Wordbook

Easy Wordbook app is your assistant in learning new words or concepts which you may face anywhere in your daily life in any language. With Easy Wordbook, you no longer need to ask or search a word a second time once you store the word in your own database of words. It provides a home screen widget to help you learn and remember the words you’ve added. Place the widget on the main screen and learn a new word each time you unlock your phone. Essential features: Store unlimited number of words in any language Home screen widget Backup/Restore your data safely Edit or delete words Search for a word Find a word or words containing a specific character combination Sort alphabetically or by date inserted Comprehensive help to help you get the most out of Easy Wordbook app Friendly user interface with many more features


This app was designed and developed to facilitate the task of Newtex embroidery company employees who used to fill up the customer forms manually. The objective was to automate the procedure as well as to prevent employee errors during form fill-up. ####What the app actually does: The app will prompt the form filler about any empty fields and to validate the form. The employee can then easily print the form or save it as a PDF file into device storage. The employee will then be able to email the PDF file to the required party through the application. ####External libraries used: JavaMail API Chunk Java Template Engine

Hi! I'm Zane Helton.

North Carolina

iOS Developer Since 2013

Game Forger

Express your creativity. Make anything you want. Game Forger allows you to easily create games and interactive applications right on your iOS device, without needing to know how to program. Create objects and set them to do exactly what you want Create labels to display anything you want Email games to people Do you HATE freemium apps? We do too, with a passion. Game Forger will never try to sell you anything. Period. When you download Game Forger, you're downloading an app that will be a servant to YOU, not anyone else. Game Forger is ever changing. It will always continue to get better and will receive many updates. During the beta testing, we received a lot of ideas and fixed a lot of bugs. Although we haven't built all of the ideas in yet, we certainly intend to do so. Check out the wiki: reddit.com/r/gameforger/wiki/

KnightVPN iOS App

Powerful plugin for OpenVPN allows you to use KnightVPN on your device and connect to multiple VPN servers and locations. Requirement This is not a standalone application, and it will not work without OpenVPN Connect. You must have an account on KnightVPN.info to use our VPN profiles.


BSWQuickType Imitates the functionality of Apple's QuickType with the ability to fill in custom elements rather than suggested words. BSWQuickType is a great way to suggest more relevant words to your users than Apple's QuickType will. This UIScrollView works by attaching to the top of the users keyboard and allowing them to tap the suggestions. Bison Software: http://www.bison.software/ ##Usage ###Import First you're going to want to import the BSWQuickType files by adding the files to your project then adding an import statement to the top of your .h file like so: #import "BSWQuickType.h" ###Delegate You'll then want to conform your current class to the BSWQuickTypeDelegate by adding <BSWQuickTypeDelegate> to your .h file. ###Initialize Now you'll be able to create a BSWQuickType object in your .m file. It's recommended you make your BSWQuickType object an instance variable in case you need to use it outside of the method it's being initialized in. To create your BSWQuickType object, use the following lines: BSWQuickType *quickTypeView = [[BSWQuickType alloc] initWithFrame:CGRectMake(0, 0, self.view.frame.size.width, 36) suggestionArray:@[@"Text", @"For", @"You"] filterSuggestions:YES onTextField:_demoTextField]; This'll create a BSWQuickType view object automatically, and nothing else is required in order for it to work, although there are a few configurations. ##Configurations quickTypeShouldScroll - Should the user be able to scroll the suggestions. (BOOL) quickTypePagingEnabled - Should the scroll view have "pages" of suggestions when scrolling, or should it be continuous scrolling. (BOOL) quickTypeBouncingEnabled - Determines if the scroll view should bounce if the user goes too far to once side when scrolling. (BOOL) quickTypeFilter - Should the BSWQuickType filter through your suggestions and give the most relevant ones first. (BOOL) ##Protocols - (void)quickType:(BSWQuickType *)quickType selectedButtonAtIndex:(NSInteger)buttonIndex withArray:(NSArray *)resultsArray; This is the only protocol currently available in BSWQuickType and is called whenever a user taps a suggestion. The method allows the use of the current BSWQuickType object, the suggestion button's index, and finally the array used if filtering is enabled. ##Methods - (void)hideQuickType; Hides the QuickType view from the user. - (void)showQuickType; Shows the QuickType view to the user. ##TODO Make it visually more similar to Apple's QuickType ##License The MIT License (MIT) Copyright (c) 2015 Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

jonathan wong


A random being in a sea of people.

Stroke of Inspiration

A simple textfile hosting website akin to a platform like Pastebin or Ghostbin. Allows greater functionality for the admin user.


V.I.S.I.ON is an automation modal that opens up docs and urls without any input or need to turn to the command line. It is unobtrusive and does not send any data to a database nor store or track your information. V.I.S.I.O.N recognizes your need for privacy and happily respects it. All the power to you, the user.


labob A web interface for automatic LaTeX typesetting Convert your report's text into LaTeX code for better typesetting. Tools are integrated to convert the generated code into a ready-to-go PDF file or shareable URL. An example of a sample HTML report can be found here and the corresponding PDF report can be found here. Created by Jonathan Wong and Brian Isakov; licensed under GPL v3.

Mudasir Rehman


ASP.NET MVC Web and C Sharp Desktop Application Developer

Library Management System

Introduction: The project titled Library Management System is Library management software for monitoring and controlling the transactions in a library .The project “Library Management System” is developed in C#, which mainly focuses on basic operations in a library like adding new member, new books, and updating new information, searching books and members and facility to borrow and return books.“Library Management System” is a windows application written for 64-bit Windows operating systems, designed to help users maintain and organize library.Our software is easy to use for both beginners and advanced users. It features a familiar and well thought-out, an attractive user interface, combined with strong searching Insertion and reporting capabilities. The report generation facility of library system helps to get a good idea of which are the books borrowed by the members, makes users possible to generate reports’ hard copy. The software Library Management System has four main modules. Insertion to Database Module – User friendly input screen. Extracting from Database module – Attractive Output Screen. Report Generation module – borrowed book list & Available book list. Search Facility system – search for books and members. Tools and Technologies: MS Visual Stadio 2015 SQL Server 2014

inventory system

Introduction: This is the very basic inventory system. in this project only one class used and specially this all project maked in Array Lits.This a smester projrct for students. Tools and Technologies: MS Visual Stadio 2015

University Recruitment System

introduction: The online university recruitment System. This application is providing support to job seekers (students) & Companies. By implementing this application any organization can open a new door to the job students for searching available jobs and testing self-skills, an opportunity to the recruiting companies for giving advertisement. This application can give a good profitable dimension to that organization as the number of users will increase day by day in this new era. All types of functionalities of this application have been mentioned here accordingly. Tools and Technologies: MS Visual Stadio 2015 SQL Server 2014

Sheena Ramirez

Chicago, IL

Full-stack Javascript developer based in Chicago, Hack Reactor graduate


In this online flashcard application, I worked with a team to develop routing within an AngularJS architecture, as well as built the interface for studying flashcards and used agile methodologies to coordinate task management with 4 other software engineers. To view a demo of Repeat.it, use the following credentials: Username: demo22 Password: demo22

Z-Chi Quiz

Members of Zeta Sigma Chi sorority can test their knowledge of the organization's history in this interactive JavaScript application.


In this social photo app, I worked with a team to add "friending" functionality and allow sharing of photos between multiple accounts using React, Express and MongoDB. Our team also diagnosed bugs in the inherited codebase and implement code on the front-end and back-end to fix any issues. To view a demo of this app, use the following credentials: Username: demo Password: demo