It's hard to summarize years of work in a single list. But hell, let's do it anyway:
- Codekit 2 3 9 – Build Websites Faster And Better Home
- Codekit 2 3 9 – Build Websites Faster And Better Fps
CodeKit belongs to 'Live Reloading' category of the tech stack, while Webpack can be primarily classified under 'JS Build Tools / JS Task Runners'. 'Easy to configure' is the primary reason why developers consider CodeKit over the competitors, whereas 'Most powerful bundler' was stated as the key factor in picking Webpack.
The Build System
- Top 3 Code Teaching and Learning Tips April 14, 2016. To get the best outcomes with students (and yourself!), here are my top 3 code teaching tips: 1- Write real code, not ‘lego' code. 2- Use real coding tools, not code simulators. 3- Build real projects from start to finish. Write real code, not ‘lego' code.
- I looked at CodeKit 1.0 and said, 'This is crap. How the hell did I ship this? I can do better.' Look at those icons.) So, in December of 2012 I hired a designer and started working on CodeKit 2.0, which shipped in March of 2014. It was a giant leap forward in every way. Third Time's The Charm.
- As Bryan from Incident 57 told me, the refreshing process in Codekit 2 is totally different to the refreshing process in Codekit 1. Codekit comes with its own server which you are required to run. You can click it in the top right hand corner of the program and it will launch. You need to have this running to get going.
- Process every file in your project with one click.
- Migrate existing projects to use a build folder by checking one box.
- Automatic support for 'source/build' folder patterns.
- Customize the build process in an intuitive GUI.
- Run any number of Bash Scripts or AppleScript during builds.
- Drag-and-drop to reorder build steps.
- Files build automatically as you add them to your project.
- Massively multi-threaded to rip through builds quickly.
Babel
- Transpile ECMAScript 7, 6 or 2015 into ES5.
- Compile React projects.
- Easily configure Babel options
- Add your own plugins/presets in CodeKit's interface.
- Support for .babelrc files if you (or your team) use them.
Image Optimizers
- Optimize SVGs with SVGO.
- MASSIVELY improved PNG optimization using PNGQuant. (File size reductions of 75% or more with no visible changes in quality.)
- Optimize GIFs with Gifsicile.
- Optional 'lossy' JPEG optimization.
- Faster processing, especially for PNGs.
ES6 JavaScript Bundling
- Use import statements in JavaScript
- Automatically combine JS modules into a single file that web browsers understand
- Simple, one-click setup. No writing complex config files.
npm
- npm is the new default package manager
- Install, update, and manage over 1,300,000 open-source packages with a single click
- See safe and breaking updates automatically
- Install custom, unlisted packages
- View changelogs for most packages right in the app
- (Bower is still included for legacy projects.)
ESLint
- ESLint, the mother of all syntax checkers, is now built-in
- Infinitely configurable in CodeKit's UI.
- Syntax Issues are much neater and cleaner in the log.
- Automatic skipping of issues in common libraries like jQuery, etc.
- See documentation for every option right in the app.
- Support for .eslintrc files if you (or your team) use them.
Automatic Cache-Busting
- Makes sure your users always receive the latest files you upload to your server instead of cached copies on their local machines.
- Available for all 'HTML-like' languages (Slim, Kit, Markdown, etc) and your own custom languages.
- Zero configuration; it just works
- Uses file hashes to only bust the cache when a file's content has actually changed.
HTML Minifier
- Strip comments, extra whitespace, and unneeded attributes from HTML to reduce file size.
- Works for HTML files themselves and anything that compiles to HTML, like HAML, Markdown, Kit, Slim, and more.
TerserJS
- The new JavaScript minifier supports ES6 syntax so you can minify without having to transpile first.
SSL
- Automatic SSL (TLS) support for browser previewing.
- No fussing with certificates or OpenSSL; just check a box.
- Works across all devices.
Hooks
- More matching options for Hooks, including full RegEx support.
- Much easier pattern: each Hook now runs once for each file that triggers it. (In CodeKit 2, each Hook ran only one time after all files were processed, so they were harder to write. You had to handle multiple files in your Hook. Now you only ever have to handle one at a time.)
- Output and errors from Hooks now appear in CodeKit's log, just like other result information.
Add Your Own Languages
- Easily tell CodeKit about custom file types.
- Set default output paths and output actions for your custom file types using the same UI as every other language in the app.
- Combine with Hooks to extend CodeKit to process any kind of file.
Bower
- Automatic creation and updating of bower.json files.
- Install specific versions of a component.
- Specify the local name of a component.
- The components list is now cached for must faster operation.
- Easily rename and relocate the bower_components folder.
- The components list is now cached for must faster operation.
Pug
- The successor to Jade.
- Fully integrated with all options available in the UI.
- Backwards support for legacy Jade files.
Kit
Codekit 2 3 9 – Build Websites Faster And Better Home
- The successor to Jade.
- Fully integrated with all options available in the UI.
- Backwards support for legacy Jade files.
Kit
Codekit 2 3 9 – Build Websites Faster And Better Home
- New 'optionals' syntax for variables, modeled on Swift: . These make it easy to do things like active states on nav menu items.
- The content of imported files is now properly indented with leading whitespace.
- Special comments declaring a variable no longer produce blank lines in the output file, as long as there's no trailing whitespace after the comment.
- Support for root-relative (absolute) @import statements
CSS
- You can now minify regular CSS files.
- You can also run Autoprefixer and Bless on regular CSS files.
- Hell, you can even get a Source Map for them.
- Honestly, just write Sass. It's 2016. Ain't nobody got time for regular CSS.
Bitters
- The Bitters Framework (from the folks who make Bourbon and Neat) is now built-in
More
- A brand new UI, obviously.
- Seamless migration of 2.0 projects to 3.0.
- Massive performance increases for large projects with 50,000+ files—project refreshes are much faster.
- File-watching is automatically paused when you switch to a Version Control app or (optionally) the Terminal.
- You can override remote stylesheets with local copies
- You can now create your own Groups to organize Projects in the list.
- Search field added for Projects.
- Search field added for the Files tree.
- Precise control over when CodeKit posts notifications, comes to the front, or beeps.
- The safe-start shortcut has been changed from holding down the Shift key to holding down the Option key.
- Expanded AppleScript APIs to control CodeKit from any workflow.
- Support for JavaScript import statements when determining linked files.
- Lock and unlock Output Paths for files so they update or don't update automatically as the source file moves.
- The ability to simply copy files and folders from one location to another, if needed.
- Custom dock icons for both dark and light menu modes in macOS.
- Enhanced reliability for the Preview Server—you can now use the back and forward buttons in your browser without dropping the connection.
- On slow WiFi networks, you can now hide the 'unstable connection' banner that shows up in your browser.
- Ability to hide the config.codekit3 project settings file.
- Hundreds of bug fixes
Overview
Every website has a purpose, a reason someone created it and others use it. In this lesson, students will start to consider the purposes a website might serve, both for the users and the creators. Students will explore a handful of the most-used websites in the United States and try to figure out how each of those sites is useful for users and how they might also serve their creators.
Purpose
Unit 2 is all about the World Wide Web, with a focus on creating websites for self expression. To start students thinking about why they might want to create a website, they must begin to consider how websites are useful tools for both users and creators. The lesson starts with popular websites because they all serve clear purposes for a large number of users, but eventually students are asked to narrow their vision to simpler sites that might serve the needs of a smaller user group.
Agenda
Warm Up (10 minutes)
Activity (45 minutes)
Wrap Up (5 min)
View on Code Studio
Objectives
Codekit 2 3 9 – Build Websites Faster And Better Fps
Students will be able to:
- Identify the reasons someone might visit a given website
- Identify the reasons someone might create a given website
Preparation
- Print a copy of The Purpose of Websites - Activity Guide for each student.
Links
Heads Up! Please make a copy of any documents you plan to share with students.
For the Teachers
- The Purpose of Websites - Exemplar
For the Students
- The Purpose of Websites - Activity Guide
Vocabulary
- Website - A collection of interlinked web pages on the World Wide Web
Warm Up (10 minutes)
Teaching Tip
Websites vs. Apps: You may find that students don't think that they actually visit websites very frequently, because they use apps instead. If you encounter this, encourage students to consider whether those apps might actually just a streamlined way to visit a website. Facebook, for example, might be used more frequently from an app, but it's actually a website underneath it all.
The Last Website you Visited
Set Up: Have students take out their journal. In their journal have students answer the following prompt.
Prompt: What was the last website you visited? Why did you go to that website?
Discussion Goal
Goal: The goal of having this discussion is to pull out that websites share information and that people go to websites for a particular purpose. You only stay on that website if it fulfills your needs.
Discuss: Have students share out the last website they visited. Make sure students share why they went to that website and what information they were looking for. In addition you can ask students whether or not the website provided the information they wanted.
Activity (45 minutes)
Websites We Use Frequently
Prompt: With a neighbor, come up with a list of what you think are the top 5 most frequently visited websites. These can include websites that you visit often, but also consider which pages the other people in your life use frequently.
Share: Have groups share out their top 5 websites lists, keeping track of unique sites on the board.
Discussion Goal
Goal: The intent of this discussion is to get students thinking about both why people make websites, and why they use websites. Push students to give detailed purposes for some of the websites that the class generated.
Discuss: Why do you think these websites are so commonly used? What purpose do they serve, or what problems do they solve?
Finding the Purpose
Remarks
We came up with a lot of reasons why people might use some of the most visited websites, but that's only one side of the picture. The people who make websites also have their own reasons for doing so. In the next activity, you're going to start thinking about the purposes that various websites serve for both the user and the creator.
Group: Put students in pairs.
Distribute: Pass out a copy of The Purpose of Websites - Activity Guide to each student.
Direct students to the 'Top Websites' level on Code Studio.
The Purpose of Websites
Teaching Tip
The goal of this activity to get students to consider why different websites were created. They don't need to necessarily get it 'right' for each site, but they should demonstrate that they have considered the potential purposes that a website might serve for the creator. If students struggle to identify the purpose a site serves its creator, consider asking the following prompts:
- Does the web site sell goods or services?
- Do users contribute anything (images, information, reviews) that might be useful to the creator?
- Does the site include any paid advertising?
Top Websites
This first page of this activity guide asks students to consider what purposes some of the most visited websites might serve. Using a list of the top ten websites in the US, student pairs select three sites that interest them and for each discuss:
- Why people might use that site (what purpose does it serve users?)
- Why the creators might have made that site (what purpose does it serve the creators?)
Encourage students to be as detailed as possible when brainstorming the purposes of these sites.
Share: Once everyone has had a chance to brainstorm about their sites, give the class a chance to share out their thoughts.
Personal Websites
The second page of this activity guide encourages students to transition from thinking about huge sites that serve the needs of millions of people, to the much smaller kinds of sites they could create, which can still effectively serve the needs of a narrower group of users.
Read through the personal website description with the class:
Website Description: Julia wants to become a better home cook, so she started a blog where she can post about the recipes she tries. Each week Julia attempts a new recipe and adds a page about it to her blog. Sometimes the recipes go really well and her blog readers leave her encouraging comments. Occasionally her recipe attempts don't go so well, but she still posts and usually gets some helpful advice from her readers. After starting to blog about the meals she makes, Julia has started to cook more often and is attempting dishes that she never would have tried before.
Discuss: Give students an opportunity to ask questions about this example site. Make sure they understand how a small site that is primarily a tool for individual self expression can also be a useful site for other people.
The final questions on the activity guide ask students to come up with potential purposes this website serves both for its creator and its users.
Share: Ask for volunteers to share the purposes they came up with.
Wrap Up (5 min)
Web Development Goals
Journal: At this point we've just scratched the surface of what websites really are, and we haven't even begun to create websites of our own. In your journal, come up with three goals for yourself this unit. These could be related to improving on one of our class practices, learning how to make a specific kind of web site, or creating a site that serves some purpose for you or others.
- Lesson Overview
This lesson covers the purposes that a website might serve, both for the users and the creators. The class explores a handful of the most-used websites in the United States and discusses how each of those sites is useful for users and how it might also serve its creators.
Vocabulary
- Website - A location connected to the Internet that maintains one or more pages on the World Wide Web.
Resources
- Top Websites
The following are the most frequently visited websites in the United States. Living earth hd v1 0 3. Each includes a brief description of the website's core function.
- Google.com - Search engine for websites, pictures, videos, and other media
- Youtube.com - User-submitted video site with ratings and comments
- Facebook.com - Social media community that allows users to share information with friends
- Amazon.com - Online shopping sites for all kinds of goods
- Yahoo.com - A search engine, email provider, and news source
- Wikipedia.org - A free encyclopedia with content generated by users
Standards Alignment
View full course alignment
CSTA K-12 Computer Science Standards (2017)
IC - Impacts of Computing- 2-IC-20 - Compare tradeoffs associated with computing technologies that affect people's everyday activities and career options.