diff --git a/src/actions/statistics.js b/src/actions/statistics.js
index f52e6ff6d33173bda30f6a71af9107b663d30c03..17aab14915e672deb567e26291cf1c2cf8706b77 100644
--- a/src/actions/statistics.js
+++ b/src/actions/statistics.js
@@ -8,6 +8,7 @@ import {
   WRITE_EVENT,
   ADD_EVENT,
   DELETE_EVENT,
+  GET_TRAINEE_BY_ID,
 } from './types';
 
 export const getEvents = () => (
@@ -38,6 +39,20 @@ export const getEventById = id => (
   }
 );
 
+export const getTraineeById = id => (
+  async (dispatch) => {
+    try {
+      const response = await axios.get(`/api/v1/profiles/${id}`);
+      dispatch({
+        type: GET_TRAINEE_BY_ID,
+        payload: response.data,
+      });
+    } catch (e) {
+      console.log(e);
+    }
+  }
+);
+
 export const getTrainees = () => (
   async (dispatch) => {
     try {
diff --git a/src/components/Main.js b/src/components/Main.js
index 8f917c698f0801312f9870b569a30b4a5b83a1d1..0ddccfce750efe40cc8e07f29b791e9613989708 100644
--- a/src/components/Main.js
+++ b/src/components/Main.js
@@ -10,6 +10,7 @@ import Statistics from './pages/Statistics';
 import Groups from './pages/Groups';
 import News from './pages/News';
 import EventDetail from './pages/EventDetail';
+import TraineeDetail from './pages/TraineeDetail';
 
 const Main = () => (
   <Switch>
@@ -22,6 +23,7 @@ const Main = () => (
     <Route path='/statistics' component={Statistics} />
     <Route path='/groups' component={Groups} />
     <Route path='/events/:id' component={EventDetail} />
+    <Route path='/trainees/:id' component={TraineeDetail} />
     <Route component={NotFound} />
   </Switch>
 );
diff --git a/src/components/pages/TraineeDetail.js b/src/components/pages/TraineeDetail.js
new file mode 100644
index 0000000000000000000000000000000000000000..acd5a02d6ca809cc7ef426977ce1cff21a9be9a5
--- /dev/null
+++ b/src/components/pages/TraineeDetail.js
@@ -0,0 +1,57 @@
+import React, { Component } from 'react';
+import {
+  Container,
+  Item,
+  Button,
+  Comment,
+  Form,
+  Header,
+  Table,
+  Icon,
+  Checkbox,
+} from 'semantic-ui-react';
+import { connect } from 'react-redux';
+import moment from 'moment';
+import { getEvents, getTraineeById } from '../../actions/statistics';
+
+class TraineeDetail extends Component {
+
+  componentWillMount() {
+    this.props.getTraineeById(this.props.match.params.id);
+    //this.props.getNotesByTrainee(this.props.match.params.id);
+    this.props.getEvents();
+  }
+
+  renderTrainee() {
+    const { full_name, nick } = this.props.selectedTrainee;
+    return (
+      <Item>
+        <Item.Header as='h2'>{full_name}</Item.Header>
+        <Item.Header as='h3'>{nick}</Item.Header>
+      </Item>
+    );
+  }
+
+  render() {
+    return (
+      <Container>
+        <Container textAlign='center'>
+          { this.props.selectedTrainee ?
+            this.renderTrainee()
+            :
+            ''
+          }
+        </Container>
+        <Container
+          style={{
+            padding: '80px',
+          }}
+        />
+      </Container>
+    );
+  }
+}
+
+const mapStateToProps = ({ events: { events }, trainees: { selectedTrainee } }) => ( { events, selectedTrainee });
+
+export default connect(mapStateToProps, { getEvents, getTraineeById })(TraineeDetail);