diff --git a/src/components/activity/activity.json b/src/components/activity/activity.json
new file mode 100644
index 000000000..394eab22b
--- /dev/null
+++ b/src/components/activity/activity.json
@@ -0,0 +1,57 @@
+[
+ {
+ "id": 5,
+ "author": {
+ "id": "lynxkitten101",
+ "username": "lynxkitten101",
+ "avatar": "https://cdn2.scratch.mit.edu/get_image/user/10122882_32x32.png?v=1438781835.82"
+ },
+ "stamp": "2015-09-08T19:40:00Z",
+ "message": "became a curator of A bit of everything",
+ "url": "/studios/1511220/"
+ },
+ {
+ "id": 4,
+ "author": {
+ "id": "sheep_tester",
+ "username": "Sheep_tester",
+ "avatar": "https://cdn2.scratch.mit.edu/get_image/user/3290075_32x32.png?v=1439575340.77"
+ },
+ "stamp": "2015-09-08T03:20:00Z",
+ "message": "became a curator of To All My Great Followers & People",
+ "url": "/studios/1511360/"
+ },
+ {
+ "id": 3,
+ "author": {
+ "id": "-vexvorlo-",
+ "username": "-VexVorlo-",
+ "avatar": "https://cdn2.scratch.mit.edu/get_image/user/10930092_32x32.png?v=1439735067.99"
+ },
+ "stamp": "2015-09-01T03:20:00Z",
+ "message": "loved Virtual Chicken Coop",
+ "url": "/projects/73311484/"
+ },
+ {
+ "id": 2,
+ "author": {
+ "id": "-vexvorlo-",
+ "username": "-VexVorlo-",
+ "avatar": "https://cdn2.scratch.mit.edu/get_image/user/10930092_32x32.png?v=1439735067.99"
+ },
+ "stamp": "2015-08-22T02:00:00Z",
+ "message": "loved Bread bread bread..",
+ "url": "/projects/75677832/"
+ },
+ {
+ "id": 1,
+ "author": {
+ "id": "getbent",
+ "username": "getbent",
+ "avatar": "https://cdn2.scratch.mit.edu/get_image/user/676422_32x32.png?v=1436728562.25"
+ },
+ "stamp": "2014-09-08T00:00:00Z",
+ "message": "loved Is ______ An Instrurment?",
+ "url": "/projects/75347968/"
+ }
+]
diff --git a/src/components/activity/activity.jsx b/src/components/activity/activity.jsx
new file mode 100644
index 000000000..2728d1337
--- /dev/null
+++ b/src/components/activity/activity.jsx
@@ -0,0 +1,39 @@
+var React = require('react');
+
+var Box = require('../box/box.jsx');
+var Format = require('../../mixins/format.jsx');
+
+require('./activity.scss');
+
+module.exports = React.createClass({
+ propTypes: {
+ items: React.PropTypes.array
+ },
+ getDefaultProps: function () {
+ return {
+ items: require('./activity.json')
+ };
+ },
+ render: function () {
+ return (
+ {item.author.username} {item.message} {Format.date(item.stamp)}
+ {this.props.items.map(function (item) {
+ return (
+
+
+